Jump to content

Manual:$wgDBmwschema

From mediawiki.org
This page is a translated version of the page Manual:$wgDBmwschema and the translation is 100% complete.
Database-instellingen: $wgDBmwschema
Schema waarin de MediaWiki-tabellen worden opgeslagen.
Geïntroduceerd in versie:1.8.0
Verwijderd in versie:nog steeds in gebruik
Toegelaten waardes:(string)
Standaardwaarde:null (1.23+)
'mediawiki' (1.8-1.22)

Details

Databaseschema voor Mediawiki-tabellen Het werd oorspronkelijk alleen gebruikt als uw backend database Postgres/MSSQL was. Sinds MediaWiki 1.31 heeft het ook invloed op andere databasetypes. Dit geeft aan in welk schema de belangrijkste mediawiki-tabellen leven, en is ongeveer gelijk aan de manier waarop $wgDBprefix wordt gebruikt door MySQL.

De installateur van oude MediaWiki-versies stelde dit in LocalSettings.php direct in op 'mediawiki', zelfs voor MySQL-databases, wat fouten kan veroorzaken bij het upgraden. Als u fouten krijgt bij het upgraden naar MediaWiki 1.31 of later en u gebruikt Postgres/MSSQL niet als database backend, verwijder dan deze instelling uit LocalSettings.php.

Let op! Let op:
  • Wijzig $wgDBmwschema niet nadat Setup.php is ingesloten. Opmerking: Setup.php initialiseert verschillende paden, voegt sommige algemene bestanden toe, start sessies en voert verschillende ander set-up taken uit voor een request. Het is niet gerelateerd aan de installatie of set-up van MediaWiki.
  • Alleen bestanden in includes/db/ moeten $wgDBmwschema gebruiken, al de anderen moet de methode dbSchema() gebruiken via het interface Wikimedia\Rdbms\IDatabase of het halen uit de methode getDomainId() via een van de interfaces Wikimedia\Rdbms\ILoadBalancer en Wikimedia\Rdbms\ILBFactory. De klasse DatabaseDomain kan zulke componenten extraheren uit het database domein ID.
  • Wanneer u $wgDBservers of $wgLBFactoryConf instelt, moet u ook $wgDBname, en eventueel $wgDBmwschema en $wgDBprefix definiëren. Voor de laatste 2 is dat afhankelijk van het type database. De combinatie van $wgDBname, $wgDBmwschema en $wgDBprefix definiëren het "database domein" van de huidige wiki. Dit wordt ook wel het "lokale database domein" genoemd. De 'dbname' en 'tablePrefix' instellingen in $wgDBservers en $wgLBFactoryConf definiëren alleen de standaard DB/prefix wanneer er een connectie wordt aangevraagd met DatabaseDomain::newUnspecified()->getId() (de lege string) als database domein, bijvoorbeeld wfGetDB( DB_REPLICA, [], '' ). Merk op dat aanroepen van functies als wfGetDB( DB_REPLICA ), die het database domein weglaten, aannemen dat er verwezen wordt naar het lokale database domein.
Waarschuwing Waarschuwing: Als u deze instelling wijzigt, moet u waarschijnlijk een nieuwe gebruiker aanmaken (en ook $wgDBuser wijzigen), omdat het configuratiescript het standaardpad van de gebruiker instelt om het schema op te nemen.