WordPress и MySQL 8
Здравейте,
Фен съм на новите технологии и много обичам ъпдейтите ;))
Поради тази причина от днес root.bg вече работи на MySQL 8!
В този пост ще споделя особенностите при пускането на версия 8 и какво е нужно да проработи нашия wordpress – особенно ако базата му е голяма, стара и с различни типове charset и collation-и. Да подчертая че мигрирах от MariaDB 10.2 и за целта си вдигнах нов MySQL сървър – не съм правил mysql_upgrade, а dump и restore на базата!
Повече подробности за новостите в MySQL 8 може да се намерят в официалния им сайт.
Това което е важно за wordpress специално е именно това :
- Character set support. The default character set has changed from
latin1
toutf8mb4
. Theutf8mb4
character set has several new collations, includingutf8mb4_ja_0900_as_cs
, the first Japanese language-specific collation available for Unicode in MySQL. For more information, see Section 10.10.1, “Unicode Character Sets”.
Или именно проблемът с който се сблъсках след като налях базата на root.bg на новия mysql сървър. Ето така изглеждаха всичките публикации написани на кирилица :
Причината за това е именно енкодинга в MySQL.
Този проблем може да се реши по два начина – чрез настройка в самия сървър или в конфигурационния файл на нашия wordpress.
Ето и двата начина:
В MySQL:
character-set-server=latin1
За да направим проверка в mysql конзолата пишем :
SHOW VARIABLES LIKE 'character\_set\_%';
и трябва да видим следния резултат :
+--------------------------+---------+ | Variable_name | Value | +--------------------------+---------+ | character_set_client | utf8mb4 | | character_set_connection | utf8mb4 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | utf8mb4 | | character_set_server | latin1 | | character_set_system | utf8 | +--------------------------+---------+ 7 rows in set (0.00 sec)
В wordpress:
В конфигурационният файл на wordpress – wp-config.php добавяме следния ред :
define('DB_CHARSET', 'latin1');
И така вече имаме работещ wordpress на MySQL 8!
ПС
root.bg живее върху :
ubuntu 18.04.1
nginx 1.14.0
php 7.2.11
mysql 8.0.13
memcached 1.5.6
Това е!