Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Ar galiu naudoti skirtingas duomenų bazių versijas skirtingoms svetainėms daugialypiame tinkle


Ar galiu naudoti skirtingas duomenų bazių versijas skirtingoms svetainėms daugialypiame tinkle


Skirtingų duomenų bazių versijų naudojimas skirtingoms svetainėms daugialypiame tinkle paprastai nepalaikomas ir yra techniškai sudėtingas. Tipinėje daugialypės terpės tinklo architektūroje visose svetainėse yra ta pati duomenų bazė ir ta pati duomenų bazių valdymo sistemos (DBMS) versija. Čia yra išsamus šios temos tyrimas, kuriame nagrinėjama koncepcija, padariniai ir alternatyvos, susijusios su skirtingų duomenų bazių versijų naudojimu daugialypėje sąrankoje.

Suprasti daugialypį tinklo duomenų bazės struktūrą

Daugialypis tinklas, pavyzdžiui, „WordPress Multisite“, naudoja vieną duomenų bazės egzempliorių, kad saugotų kelias svetaines. Duomenų bazėje yra pagrindinės tinklo lentelės, kurios taikomos visam tinklui ir išskiria kiekvienos svetainės duomenis į atskiras lenteles, naudojant unikalius priešdėlius. Svetainės neturi savo atskirų duomenų bazių; Vietoj to, jie turi tą patį duomenų bazės serverį ir egzempliorių, tačiau su skirtingomis lentelėmis ar lentelių rinkiniais, atitinkančiais atskiras svetaines.

Tai reiškia, kad pagrindinė duomenų bazės sistema („MySQL“, „MariaDB“ ar kita palaikoma RDBMS) versija turi būti vienoda visame daugialypiame tinkle, nes visos svetainės yra prijungtos prie tos pačios duomenų bazės egzemplioriaus. DBMS versija kontroliuoja visų saugomų duomenų duomenų bazės funkcijas, našumą ir suderinamumą. Kai kuriose svetainėse neįmanoma naudoti naujesnės ar skirtingos duomenų bazės versijos, o kitos naudoja senesnę versiją, jei jos gyvena tame pačiame duomenų bazės serveryje.

Techniniai apribojimai

- Vienos duomenų bazės egzempliorius: Daugialypis tinklas naudoja vieną duomenų bazės egzempliorių. Tai reiškia, kad visose svetainėse yra tik viena veikianti duomenų bazės serverio versija.
- Duomenų bazės variklio suderinamumas: duomenų bazės versija valdo turimas variklio funkcijas, SQL tarmes ir našumo optimizavimą. Nebegalinga maišyti skirtingas versijas vienoje schemoje.
- lentelės priešdėlio atskyrimas: Nors kiekvienos svetainės duomenys yra atskirti lentelės priešdėliais, visos lentelės yra toje pačioje globalioje duomenų bazėje. Tai reiškia, kad visos lentelės turi būti suderinamos su ta pačia duomenų bazės variklio versija.
- Vienoda DBMS versija: Visas daugialypis tinklas remiasi vienoda DBMS versija. Bet koks atnaujinimas ar pažeminimas veikia visas svetaines vienu metu.

Kas atsitiks, jei reikalingos skirtingos duomenų bazės versijos?

Jei skirtingoms svetainėms reikalingos skirtingos DBMS versijos, tipinė daugialypė sąranka negali to įvykdyti nesuvokiant architektūros principų. Šis reikalavimas gali atsirasti dėl:

- Suderinamumo problemos su kai kuriais papildiniais ar temomis, kurioms reikalingos naujesnės ar senesnės duomenų bazės funkcijos.
- Našumo derinimo ar optimizavimo reikalavimai, kuriuos geriau patenkina kita versija.
- Duomenų bazės varikliui būdingos klaidos ar apribojimai.

Kadangi daugialypė architektūra priklauso nuo vienos duomenų bazės egzemplioriaus, vienintelis tikras būdas pritaikyti skirtingas skirtingų duomenų bazių versijas būtų padalyti jas į atskirus tinklus ar atskiras atskiras instaliacijas, kurių kiekviena turi savo duomenų bazės serverio egzempliorių, vykdantį norimą versiją.

Įvairių duomenų bazių versijų alternatyvos vienoje svetainėje

Atskiri duomenų bazių serveriai vienoje svetainėje su nepriklausomais „WordPress“ diegimais

Vietoj daugialypės terpės galite savarankiškai nustatyti skirtingas svetaines, kurių kiekviena turi savo duomenų bazės serverį, kuriame veikia norima DBMS versija toje svetainėje. Tai suteikia visišką lankstumą, tačiau aukoja:

- Vieningas valdymas
- centralizuotas vartotojo ir papildinio valdymas
- Paprastos atsarginės kopijos visose svetainėse
- Bendros temos ir papildiniai

Šis požiūris yra geriausias, kai svetainėse yra labai skirtingų techninių ir saugumo reikalavimų.

kelios duomenų bazės tame pačiame serveryje

Kartais kelios duomenų bazės gali būti toje pačioje duomenų bazės serverio egzemplioriuje su ta pačia versija. Tai neatitinka skirtingų versijų poreikio vienoje svetainėje, tačiau leidžia atsiskirti duomenų saugojimo atžvilgiu.

naudokite daugialypį, bet su vienoda DBMS versija

Jei svetainės gali veikti pagal vieną duomenų bazės versiją, „Multisite“ išlieka tvirta galimybė. Tinkle svetainėse yra atskiros lentelės, tačiau visos jos turi tą pačią duomenų bazės serverio versiją ir pagrindinę sąranką.

„WordPress“ daugialypė specifika

„WordPress“ daugialypiai tinklai sukuria bendras tinklo lygio lenteles (pvz., WP_USERS, WP_SITE, WP_BLOGS), o po to kiekvienai svetainei su unikaliu svetainės priešdėliu (pvz., WP_2_POSTS 2 svetainės 2 svetainei) rinkinys. Visos lentelės yra vienoje duomenų bazėje, todėl visam tinklui tarnauja viena duomenų bazės versija. „WordPress Core“, papildiniai ir temos įgauna nuoseklią duomenų bazės aplinką.

Potenciali bandymo naudoti skirtingas versijas rizika

Gali sukelti arba imituoti kitokią duomenų bazės versiją tame pačiame daugialypiame tinkle:

- Duomenų sugadinimas Jei tam tikros SQL užklausos priklauso nuo savybių, kurios nėra prieinamos kai kuriose versijose.
- Papildinio nesuderinamumas ar gedimas dėl DBMS funkcijų neatitikimų.
- Atsarginių kopijų ir migracijų sudėtingumas.
- Bendras daugialypės aplinkos nestabilumas.

Saugumo ir veiklos aspektai

Vieninga duomenų bazės versija naudinga visame tinkle saugos pataisos ir našumo patobulinimai. Bandant išlaikyti skirtingas duomenų bazės versijas, reikės kelių duomenų bazių serverių, padidinančių sudėtingumą ir kainą.

Santrauka

- Daugialypiai tinklai dalijasi viena duomenų baze ir viena DBMS versija.
- Skirtingos svetainės, esančios daugialypėje dalyje, negali naudoti skirtingų duomenų bazių versijų.
- Atskiroms duomenų bazių versijoms kiekvienoje svetainėje reikia atskirų svetainių arba tinklų su nepriklausomomis duomenų bazėmis.
- Daugialypė nauda iš duomenų bazės versijos vienodumo stabilumui, saugumui ir valdymui.
- Skirtingiems duomenų bazės reikalavimams nepriklausomi diegimai su atskiruose DBMS egzemplioriuose yra geriausias sprendimas.

Ši apžvalga paaiškina, kad įvairių duomenų bazių versijų naudojimas įvairioms svetainėms daugialypiame tinkle neįmanoma. Kiekviena tinklo svetainė dalijasi ta pačia duomenų bazės versija, iš prigimties dėl bendros duomenų bazės architektūros, esminės daugialypėms sistemoms. Jei reikia skirtingų duomenų bazių versijų, reikia priimti atskiras svetainių architektūras.