Utilizarea diferitelor versiuni de baze de date pentru diferite site -uri dintr -o rețea multisite nu este în general acceptată și este complexă din punct de vedere tehnic. Într -o arhitectură tipică a rețelei multisite, toate site -urile partajează aceeași bază de date și aceeași versiune a sistemului de gestionare a bazelor de date (DBMS). Iată o explorare extinsă a acestui subiect care abordează conceptul, implicațiile și alternativele legate de utilizarea diferitelor versiuni ale bazei de date într -o configurație multisite.
Înțelegerea structurii bazei de date a rețelei multisite
O rețea multisite, cum ar fi un multisite WordPress, folosește o singură instanță de bază de date pentru a stoca date pentru mai multe site -uri. Baza de date deține tabele de rețea de bază care se aplică întregii rețele și separă datele fiecărui site în tabele distincte folosind prefixe unice. Site -urile nu au propriile baze de date separate; În schimb, partajează același server de baze de date și instanță, dar cu diferite tabele sau seturi de tabel care corespund site -urilor individuale.
Aceasta înseamnă că sistemul de baze de date de bază (MySQL, MariaDB sau alte versiuni RDBMS suportate) trebuie să fie uniformă pe întreaga rețea multisite, deoarece toate site -urile sunt conectate la aceeași instanță de baze de date. Versiunea DBMS controlează caracteristicile, performanța și compatibilitatea bazei de date pentru toate datele stocate. Nu este posibil ca unele site -uri să utilizeze o versiune de baze de date mai nouă sau diferită, în timp ce altele folosesc o versiune mai veche dacă locuiesc pe același server de baze de date.
Constrângeri tehnice
- Instanță de bază de date unică: o rețea multisită folosește o singură instanță de bază de date. Aceasta înseamnă că există o singură versiune care rulează a serverului de baze de date pe toate site -urile.
- Compatibilitatea motorului bazei de date: versiunea bazei de date reglementează caracteristicile disponibile ale motorului, dialectele SQL și optimizările de performanță. Amestecarea diferitelor versiuni într -o schemă nu este posibilă.
- Separarea prefixului tabelului: Deși datele pentru fiecare site sunt separate prin prefixele tabelului, tabelele se află în aceeași bază de date globală. Aceasta înseamnă că toate tabelele trebuie să fie compatibile cu aceeași versiune a motorului bazei de date.
- Versiunea DBMS uniformă: întreaga rețea multisite se bazează pe o versiune DBMS uniformă de pe placă. Orice actualizare sau downgrade afectează simultan toate site -urile.
Ce se întâmplă dacă sunt necesare diferite versiuni ale bazei de date?
Dacă diferite site -uri necesită diferite versiuni DBMS, o configurație tipică multisite nu poate îndeplini acest lucru fără a îndoaie principii de arhitectură. Această cerință poate apărea de la:
- Probleme de compatibilitate cu unele pluginuri sau teme care necesită funcții de bază de date mai noi sau mai vechi.
- Cerințe de reglare a performanței sau de optimizare care sunt mai bine deservite de o versiune diferită.
- Bug-uri sau limitări specifice motorului de bază de date.
Deoarece arhitectura multisite se bazează pe o singură instanță a bazei de date, singura modalitate reală de a găzdui diferite versiuni ale bazei de date pentru diferite site -uri ar fi să le împărțiți în rețele separate sau instalații autonome separate, fiecare cu propria sa instanță de server de baze de date care rulează versiunea dorită.
Alternative la diferite versiuni ale bazei de date pe site
Servere de baze de date separate pe site cu instalații WordPress independente
În loc de un multisit, puteți configura diferite site -uri în mod independent, fiecare cu propriul server de baze de date care rulează versiunea DBMS dorită pentru acel site. Aceasta oferă o flexibilitate deplină, dar sacrificii:
- Management unificat
- Controlul utilizatorului centralizat și al pluginului
- ușurința copiilor de rezervă pe site -uri
- Teme și pluginuri partajate
Această abordare este cea mai bună pentru momentul în care site -urile au cerințe tehnice și de securitate foarte diferite.
#####mai multe baze de date pe același server
Uneori, mai multe baze de date pot rezida pe aceeași instanță a serverului bazei de date cu aceeași versiune. Acest lucru nu satisface nevoia diferitelor versiuni pe site, dar permite separarea în ceea ce privește stocarea datelor.
Folosiți multisite, dar cu versiunea DBMS uniformă
Dacă site -urile pot funcționa într -o singură versiune a bazei de date, multisite rămâne o opțiune puternică. În cadrul rețelei, site -urile au tabele separate, dar toate partajează aceeași versiune a serverului de baze de date și configurarea de bază.
Specificații multisite WordPress
Rețelele multisite WordPress creează tabele partajate la nivel de rețea (de exemplu, WP_USERS, WP_SITE, WP_BLOGS) și apoi un set de tabele specifice site-ului pentru fiecare site cu un prefix de site unic (de exemplu, WP_2_POSTS pentru Site 2). Toate tabelele se află într -o bază de date, astfel încât o singură versiune de bază de date servește întreaga rețea. Nucleul WordPress, plugin -urile și temele presupun un mediu constant de baze de date.
Riscuri potențiale de a încerca să folosească diferite versiuni
Încercarea sau simularea unei versiuni diferite a unei baze de date pentru site -urile din aceeași rețea multisite ar putea provoca:
- Corupția datelor Dacă anumite întrebări SQL se bazează pe caracteristici indisponibile în unele versiuni.
- Incompatibilitatea sau eșecul pluginului din cauza nepotrivirilor caracteristice DBMS.
- Complexități în backup -uri și migrații.
- Instabilitatea generală a mediului multisite.
Considerații privind securitatea și performanța
O versiune unificată a bazei de date beneficiază de patch-uri de securitate la nivel de rețea și îmbunătățiri ale performanței. Încercarea de a menține versiunile de bază de date divergente ar necesita mai multe servere de baze de date, crescând complexitatea și costurile.
Rezumat
- Rețelele multisite partajează o bază de date și o versiune DBMS.
- Diferite site -uri dintr -un multisit nu pot utiliza diferite versiuni de baze de date.
- Versiunile de bază de date separate pe site necesită site -uri sau rețele separate cu baze de date independente.
- multisite beneficiază de uniformitatea versiunii bazei de date pentru stabilitate, securitate și gestionare.
- Pentru cerințele de bază de date diferite, instanțele independente cu instanțe DBMS separate sunt cea mai bună soluție.