Příručka:Údržbářské skripty/Konfigurace

From mediawiki.org
This page is a translated version of the page Manual:Maintenance scripts/Configuration and the translation is 100% complete.


Údržbářské skripty, které se potřebují podívat na databázové schéma MediaWiki (jako např. Manuál:Update.php ), využívají pro přístup uživatele nastaveného v konfiguračních proměnných $wgDBadminuser a $wgDBadminpassword . Uživatel uvedený v Příručka:$wgDBuser totiž nemusí mít veškerá potřebná práva. Bez nastavení těchto proměnných se lze obejít, pokud se při spuštění skriptu předají parametry --dbuser a --dbpass. Jejich použití se může lišit podle toho, s jakou databázovou aplikací vaše MediaWiki pracuje. Pokud při spouštění skriptu nic z toho není nastaveno, použije se skript uživatele z konfigurační proměnné Příručka:$wgDBuser .

MySQL

Některé údržbářské skripty vyžadují pro práci s databází vyšší úroveň práv, než má hlavní databázový účet, se kterým pracuje MediaWiki. U webové aplikace taková úroveň práv vždy představuje bezpečnostní riziko. Pro přístup k databázi MediaWiki, byste měli mít kromě výchozího účtu vytvořen ještě jeden samostatný účet s právy 'superuživatele' (pokud již neexistuje). Po založení uživatele, dejme tomu se jménem wikiadmindb, následujícím SQL příkazem pro něj nastavíte 'superuživatelská' práva k databázi wikidb, se kterou pracuje MediaWiki. Přístup přes tento účet bude možný jen v rámci stroje na kterém vaše databáze a MediaWiki běží:

GRANT ALL PRIVILEGES ON wikidb.* TO 'wikidbadmin'@'localhost' IDENTIFIED BY 'strong-password';

Jakmile budete mít založený účet s těmito právy, můžete ho nastavit do konfigurační proměnné $wgDBadminuser . Proměnná $wgDBadminuser se nastavuje, tak jako jiné konfigurační proměnné, v konfiguračním souboru LocalSettings.php . Kromě proměnné $wgDBadminuser musíte pochopitelně napsat do proměnné $wgDBadminpassword také odpovídající heslo.

PostgreSQL

PostgreSQL používá jiný model zabezpečení přístupu k databázi než MySQL, takže je nutné pro údržbářské skripty MediaWiki použít stejný účet, který využívá PostgreSQL server pro své rutinní operace. Proto je nutné, aby se v tomto případě údržbářské skripty spouštěly pod účtem vlastníka databáze, aby se nové tabulky založily správně. Nastavení proměnných $wgDBadminuser a $wgDBadminpassword tedy není nutné.