Jump to content

Příručka:$wgDBmysql5

From mediawiki.org
This page is a translated version of the page Manual:$wgDBmysql5 and the translation is 100% complete.
Specifické pro MySQL: $wgDBmysql5
Nastavením na true nastavíte připojení MySQL na kódování UTF-8 (experimentální)
Zavedeno od verze:1.5.1 (r11508)
Nepoužívá se od verze:1.31.0 (Gerrit change 437312; git #7271d50b)
Odstraněno od verze:1.33.0 (Gerrit change 498644; git #26118ad0)
Povolené hodnoty:(boolean)
Výchozí hodnota:false

Podrobnosti

Poznámka předem: Bez ohledu na to, co zde nastavíte, MediaWiki interně vždy používá kódování UTF-8. Vše, co MediaWiki posílá do databáze, je vždy v kódování UTF-8.

Nastavením na true odešlete 'SET NAMES=utf8;' na připojení. Pokud je nastaveno na false, 'SET NAMES binary;' bude použito, což je výchozí a proto doporučené. Obecně byste tuto hodnotu po instalaci neměli měnit – pokud jste vytvořili wiki v binárních nebo UTF-8 schématech, měli byste toto ponechat vypnuté. Tato funkce je experimentální a s vaším nastavením jsou data každopádně odesílána (a tedy i nakonec uložena) se správným kódováním.

Když vaše sloupce databáze nepoužívají UTF-8 nebo binární kódování, ale např. latin1, pak je důležité nastavení $wgDBmysql5 na true. Důvod: MediaWiki interně vždy používá kódování UTF-8. Vše, co MediaWiki posílá do databáze, je vždy v kódování UTF-8. Pokud vaše databáze nyní nepoužívá UTF-8 nebo binární, ale něco jiného (jako latin1), obsah UTF-8 z MediaWiki bude zapsán do sloupců latin1. Když v takovém případě nastavíte $wgDBmysql5 na true, MySQL převede data UTF-8 pocházející z MediaWiki a uloží je v kódování the, které je správné pro sloupce databáze. Ale pokud v takovém případě nastavíte $wgDBmysql5 na false, MySQL uvidí všechna data pocházející z MediaWiki jako binární (tedy bez kódování) a zapíše je do sloupců databáze bez konverze znakové sady. Pak byste skončili s obsahem UTF-8 ve sloupcích latin1 a to je to, co nechcete!

(Viz také $wgDBTableOptions , které v novějších verzích budou zahrnovat typ tabulky a znakovou sadu používanou při vytváření tabulek.)

Může se přerušit, pokud aktualizujete stávající wiki a poté toto nastavení změníte. Příznaky nefunkčnosti budou pravděpodobně zahrnovat nesprávné chování s názvy stránek, uživatelskými jmény, komentáři atd., které obsahují jiné než ASCII znaky. Může také způsobit selhání v mezipaměti objektů a další věci.

Pokud stále používáte MySQL 4, vaše wiki byla vytvořena se starým schématem "MySQL 4 zpětně kompatibilní UTF-8" a $wgDBmysql5 by mělo zůstat vypnuté; vaše verze MySQL to stejně nepodporuje.