wp-cli Error: ошибка соединения с базой данных

После того как я установил wp-cli, при попытке создать wp-config.php через консоль, я столкнулся с такой проблемой:

Error: ошибка соединения с базой данных

Сразу скажу, что эта проблема возникает на MySQL 8.0 и чтобы ее решить, мне в итоге пришлось откатиться на MySQL 5.7

Я быстро пришел к выводу, что проблема в том, что база данных требует наличия ssl сертификата для соединения. Из консоли я мог подключиться только командой с отключеным сертификатом

mysql -h localhost -u *username* -p *password* --ssl-mode=DISABLED

Так как дело происходило под OpenServer, то я первым делом полез в конфиг, чтобы отключить SSL сертификаты для MySQL.

Перезагружаю сервер, вижу что сертификаты отключены. wp-cli все еще не работает, хотя я могу подключться из консоли без отключения ssl

mysql -h localhost -u *username* -p *password*

При проверке:

mysql> SHOW VARIABLES LIKE '%ssl%';

Я вижу, что have_openssl и have_ssl стоят в DISABLED

Перехожу в wp-config.php и включаю

define('WP_DEBUG', true);

Теперь в консоли я вижу больше информации

Error: `The server requested authentication method unknown to the client`
mysqli_real_connect(): The server requested authentication method unknown to the client [caching_sha2_password]
mysqli_real_connect(): (HY000/2054): The server requested authentication method unknown to the client
Ошибка установки соединения с базой данных
Это значит, что либо имя пользователя и пароль в файле `wp-config.php` неверны, либо нам не удалось связаться с сервером базы данных по адресу `127.0.0.1`. Возможно, сервер недоступен.

Проверив все настройки, я пробую сделать root пользователя без пароля и wp-cli прекрасно подключается. Значит дело именно в шифровании пароля.

Немного погуглив, я понял, что такое происходит в MySQL 8 и решил, что проще вернуться на MySQL 5.7.

Перейти к верхней панели