Změna formátu MySQL z utf8 na utf8mb4? phpMyAdmin

Pravidla fóra
Čim více informací poskytnete ve vašem dotazu, tim vyšší je šance, že se vám dřív dostane přesné odpovědi. Uveďte odkaz na vaše fórum, používané rozšíření a styly a zkuste sepsat úpravy na fóru za poslední týdny. Nezapomeňte uvést výstižný titulek tématu.

Odeslat odpověď


Odpověď na tuto otázku je nutná pro rozlišení automatizovaných pokusů o registraci.
Smajlíci
:-) :)) :-/ 8-) :D :-[ :evil: ;-) :-P :-( 8-| :eh: :-| ??? !!! *19* *20* :geek: :ugeek: :-D

BBCode je zapnutý
[img] je zapnutý
[flash] je vypnutý
[url] je zapnuté
Smajlíci jsou zapnutí

Přehled tématu
   

Rozšířit náhled Přehled tématu: Změna formátu MySQL z utf8 na utf8mb4? phpMyAdmin

Re: Změna formátu MySQL z utf8 na utf8mb4? phpMyAdmin

od SGvagon » úte 15. říj 2024 10:13:13

Tak asi vyřešeno ruční úpravou databáze pomocí SQL příkazů. Zde jsem našel seznam, který se trochu lišil od mé databáze, tak jsem odebral a přidal položky, které v mé databázi jsou a aplikoval změny https://www.phpbb.com/community/viewtop ... #p14023271 :-) .

Výše uvedená funkce na screenshotu bohužel nefungovala, vždy se zasekla u velké phpbb_config tabulky s chybou #1071 Max key lenght is 1000 bytes.

Ještě jsem následně musel opravit Fulltext mysql vyhledávání, které vyhledávalo ještě v utf8 tabulkách v databázi a tudíž končilo opět SQL chybou. Tzn. v souboru includes/search/fulltext_mysql.php upravit řádky:

757

Kód: Vybrat vše

$alter[] = 'MODIFY post_subject varchar(255) COLLATE utf8_unicode_ci DEFAULT \'\' NOT NULL';
na

Kód: Vybrat vše

$alter[] = 'MODIFY post_subject varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT \'\' NOT NULL';

770

Kód: Vybrat vše

$alter[] = 'MODIFY post_text mediumtext COLLATE utf8_unicode_ci NOT NULL';
na

Kód: Vybrat vše

$alter[] = 'MODIFY post_text mediumtext COLLATE utf8mb4_unicode_ci NOT NULL';
Hotovo :-) . Emoji i vyhledávání již funguje v celém Phpbb forum ;-) .

Změna formátu MySQL z utf8 na utf8mb4? phpMyAdmin

od SGvagon » pon 14. říj 2024 8:22:07

Zdravím,

všiml jsem si, že na mém fórum nelze psát do témat Emoji (SQL Error) . Našel jsem tento návod, který mi je zpřístupnil v příspěvcích https://www.phpbb.com/community/viewtopic.php?t=2340251 , tzn. předělání utf8 na utf8mb4 v phpbb_posts na post_text .

Bylo by možné nějak předělat celou databázi na utf8mb4 aniž bych někde udělal nějako závažnou chybu? V phpMyAdmin na záložce úpravy je ve spodní části možnost předělat databázi na jiné formátování, nicméně netuším co všechno mám zafajfkovat, aby fórum stále fungovalo.
phpMyAdmin_porovnani.png
phpMyAdmin_porovnani.png (8.29 KiB) Zobrazeno 50 x
Předem děkuji za odpověď. 😶 😕 .

Nahoru