Å bruke forskjellige databaseversjoner for forskjellige nettsteder i et multisite nettverk støttes generelt ikke og er teknisk sammensatt. I en typisk multisite nettverksarkitektur deler alle nettsteder den samme databasen og den samme versjonen av Database Management System (DBMS). Her er en omfattende utforskning av dette emnet som adresserer konseptet, implikasjonene og alternativene relatert til å bruke forskjellige databaseversjoner i et multisite oppsett.
Forstå multisite nettverksdatabasestruktur
Et multisite nettverk, for eksempel en WordPress multisite, bruker en enkelt databaseforekomst for å lagre data for flere nettsteder. Databasen inneholder kjernetetttabeller som gjelder hele nettverket og skiller hvert nettsteds data i distinkte tabeller ved hjelp av unike prefikser. Nettsteder har ikke sine egne separate databaser; I stedet deler de den samme databaseserveren og forekomsten, men med forskjellige tabeller eller tabellsett som tilsvarer individuelle nettsteder.
Dette betyr at det underliggende databasesystemet (MySQL, MARIADB eller annen støttet RDBMS) -versjon må være ensartet over hele det multisite nettverket fordi alle nettsteder er koblet til den samme databaseforekomsten. DBMS -versjonen kontrollerer funksjonene, ytelsen og kompatibiliteten til databasen for alle lagrede data. Det er ikke mulig for noen nettsteder å bruke en nyere eller annen databaseversjon, mens andre bruker en eldre versjon hvis de er bosatt på den samme databaseserveren.
Tekniske begrensninger
- Enkelt databaseforekomst: Et multisite nettverk bruker en enkelt databaseinstans. Dette betyr at det bare er en kjørende versjon av databaseserveren på alle nettsteder.
- Databasemotorkompatibilitet: Databaseversjonen styrer tilgjengelige motorfunksjoner, SQL -dialekter og ytelsesoptimaliseringer. Å blande forskjellige versjoner i ett skjema er ikke mulig.
- Tabellprefiks separasjon: Selv om data for hvert nettsted er atskilt med tabellprefikser, er tabellene alle bosatt i den samme globale databasen. Dette betyr at alle tabeller må være kompatible med samme versjon av databasemotoren.
- Uniform DBMS -versjon: Hele multisite nettverket er avhengig av en enhetlig DBMS -versjon overalt. Enhver oppdatering eller nedgradering påvirker alle nettsteder samtidig.
Hva skjer hvis forskjellige databaseversjoner er påkrevd?
Hvis forskjellige nettsteder krever forskjellige DBMS -versjoner, kan ikke et typisk multisiteoppsett oppfylle dette uten å bøye arkitekturprinsipper. Dette kravet kan oppstå fra:
- Kompatibilitetsproblemer med noen plugins eller temaer som krever nyere eller eldre databasefunksjoner.
- Krav til ytelse eller optimalisering som er bedre tjent med en annen versjon.
- Databasemotorspesifikke feil eller begrensninger.
Siden multisite -arkitekturen er avhengig av en databaseinstans, ville den eneste virkelige måten å imøtekomme forskjellige databaseversjoner for forskjellige nettsteder være å dele dem inn i separate nettverk eller separate frittstående installasjoner, hver med sin egen databaseserverforekomst som kjører ønsket versjon.
alternativer til forskjellige databaseversjoner per nettsted
Separate databaseservere per nettsted med uavhengige WordPress -installasjoner
I stedet for en multisite, kan du konfigurere forskjellige nettsteder uavhengig, hver med sin egen databaseserver som kjører ønsket DBMS -versjon for det nettstedet. Dette gir full fleksibilitet, men ofre:
- Unified Management
- Sentralisert bruker- og plugin -kontroll
- Enkel sikkerhetskopiering på tvers av nettsteder
- Delte temaer og plugins
Denne tilnærmingen er best for når nettsteder har veldig forskjellige tekniske og sikkerhetskrav.
Flere databaser på samme server
Noen ganger kan flere databaser oppholde seg på den samme databaseserverforekomsten med samme versjon. Dette tilfredsstiller ikke behovet for forskjellige versjoner per nettsted, men tillater separasjon når det gjelder datalagring.
Bruk multisite, men med ensartet DBMS -versjon
Hvis nettstedene kan fungere under en enkelt databaseversjon, er multisite fortsatt et sterkt alternativ. I nettverket har nettsteder separate tabeller, men de deler alle den samme databaseserverversjonen og kjerneoppsettet.
WordPress multisite spesifikasjoner
WordPress multisite nettverk lager delte tabeller på nettverksnivå (f.eks. WP_USERS, WP_SITE, WP_BLOGS) og deretter et sett med stedsspesifikke tabeller for hvert nettsted med et unikt nettstedprefiks (f.eks. WP_2_Posts for nettsted 2). Alle tabeller ligger i en database, så en enkelt databaseversjon serverer hele nettverket. WordPress -kjernen, plugins og temaer antar et konsistent databasemiljø.
Potensielle risikoer ved å prøve å bruke forskjellige versjoner
Å prøve eller simulere en annen versjon av en database for nettsteder i det samme multisite nettverket kan forårsake:
- Datakorrupsjon Hvis visse SQL -spørsmål er avhengige av funksjoner som ikke er tilgjengelige i noen versjoner.
- Plugin inkompatibilitet eller feil på grunn av DBMS har misforhold.
- Kompleksiteter i sikkerhetskopiering og migrasjoner.
- Generell ustabilitet av det multisite miljøet.
Sikkerhets- og ytelseshensyn
En enhetlig databaseversjon er til fordel for nettverksdekkende sikkerhetsoppdateringer og ytelsesforbedringer. Å prøve å opprettholde divergerende databaseversjoner vil kreve flere databaseservere, øke kompleksiteten og kostnadene.
Sammendrag
- Multisite nettverk deler en database og en DBMS -versjon.
- Ulike nettsteder i en multisite kan ikke bruke forskjellige databaseversjoner.
- Separate databaseversjoner per nettsted krever separate nettsteder eller nettverk med uavhengige databaser.
- Multisite drar nytte av databaseversjonens enhetlighet for stabilitet, sikkerhet og styring.
- For forskjellige databasekrav er uavhengige installasjoner med separate DBMS -forekomster den beste løsningen.