При попытке подключиться к MySQL с помощью phpMyAdmin выскакивает ошибка «Unknown system variable ‘lc_messages’».
Такая же ошибка появляется при вводе SQL-запроса:
> SET lc_messages = ‘ru_RU’;
Несоответствие версий phpMyAdmin и MySQL.
Для MySQL 5.5 нужно использовать phpMyAdmin версии 4.4.x и выше. Для MySQL 5.1 — phpMyAdmin 4.0.x.
Решение проблемы заключается в приведении в соответствие версий СУБД и phpMyAdmin. Для начала, мы должны понять какая версия MySQL установлена, а затем — либо обновить одну из программ, либо понизить версию phpMyAdmin (чтобы не трогать MySQL).
Выполняем команду:
В ответ мы получим, примерно, следующее:
mysql Ver 14.14 Distrib 5.5.31, for FreeBSD9.1 (amd64) using 5.2
В данном примере используется версия 5.5.31, а значит для решения проблемы нужно обновить phpMyAdmin. В вашем случае может быть обратная ситуация, например, если версия MySQL будет 5.1.
В случае использования свежей СУБД необходимо обновить phpMyAdmin. В случае использования устаревшего сервера баз данных, мы можем принять решение его не трогать — вместо этого просто использовать устаревшую версию phpMyAdmin. Так или иначе, набор действий, примерно, одинаковый.
1. Сначала находим каталог с phpMyAdmin. Путь до него можно найти в конфигурационном файле веб-сервера. Основные пути расположения phpMyAdmin:
2. Переносим содержимое каталога phpmyadmin в другую папку, например:
mv /usr/share/phpmyadmin /usr/share/old.phpmyadmin
3. Скачиваем нужную версию phpmyadmin с официального сайта.
4. Распаковываем содержимое архива в каталог хранения phpmyadmin.
Подробнее Как обновить phpMyAdmin.
Необходимо обновить MySQL одним из нижеописанных способов.
В Linux на основе RPM, например, CentOS или Red Hat:
$ sudo yum update mysql
В Linux на основе DEB, например, Ubuntu или Debian:
$ sudo apt-get update mysql-server
В UNIX на основе BSD, например, FreeBSD:
# pkg upgrade mysql-server
В этом случае, сначала сделайте дамп баз mysql. Он может и не пригодиться, но резервную копию всегда нужно иметь на случай критического сбоя.
Есть метод, с помощью которого можно быстро устранить проблему без необходимости обновлять программное обеспечение. Он не совсем правильный, так как подразумевает внесение правок в исходный код phpmyadmin.
Однако, если есть необходимость быстро решить проблему, то открываем следующий файл:
vi /usr/share/phpmyadmin/libraries/common.inc.php
* где путь /usr/share/phpmyadmin в вашем случае может быть другим.
И комментируем строки:
#if (PMA_MYSQL_INT_VERSION < $cfg[‘MysqlMinVersion’][‘internal’]) {# PMA_fatalError(# __(‘You should upgrade to %s %s or later.’),# array(‘MySQL’, $cfg[‘MysqlMinVersion’][‘human’])# );#}
* в данном примере строки уже закомментированы (знак # в начале строки).
После открываем другой файл:
vi /usr/share/phpmyadmin/libraries/classes/DatabaseInterface.php
И также комментируем следующие строки:
#if (! empty($locale)) {# $this->query(“SET lc_messages = ‘” . $locale . “‘;”, $link, self::QUERY_STORE);#}
Если вам удалось решить проблему, поделитесь своим опытом для других. Что помогло:
Продолжая использовать данный сайт вы принимаете политику конфиденциальности и cookies