Исправление предупреждений и ошибок при работе с MySQL через phpMyAdmin

👁 114 просмотров

Примечание. Есть несколько причин, почему могут выскакивать подобного рода ошибки, если метод, описанный тут не помог, то следует поразмыслить над тем, что у нас установлен phpMyAdmin, который не предназначен для PHP 7 и следует ее удалить и переустановить для текущей версии языка PHP 7 или выше.

Часто бывает, что после установки на тот или иной сервер новой версии или при переходе на новую версию(к примеру, как у меня при переходе к php 7) phpMyAdmin начинает в панели выводить массу ошибка такого плана:

Deprecation Notice in ./../php/php-gettext/streams.php mysql

Backtrace

./../php/gettext/gettext.inc#41: require()
./libraries/select_lang.lib.php#477: require_once(./../php/gettext/gettext.inc)
./libraries/common.inc.php#563: require(./libraries/select_lang.lib.php)
./index.php#12: require_once(./libraries/common.inc.php)"

...

Не буду углубляться в дебри данной проблемы, часто бывает полезно забить и выключить эти предупреждения через конфигурацию php.ini. Для Vesta этот файл расположен в директории /etc/php/7.0/apache2/php.ini. Просто надо прописать в этот файл строчку для выключения предупреждений

error_reporting = ~E_DEPRECATED & E_ALL

Которая будет заставлять PHP забить на несоответствие разных версий языка PHP. После записи этой строчки необходимо перезагрузить сервер Apache командой в консоли, если у вас Ubuntu:

service apache2 restart

Далее, еще одна очень надоедливая проблема — это проблема с controluser и тоже очень часто встречается после установки Vesta.

Нам необходимо правильно установить имя пользователя и пароль для controluser’а. Они используются для соединения с хранилищем конфигурации phpMyAdmin (configuration storage), где хранятся настройки для дополнительных функций. Хранилище конфигурации не обязательно, phpMyAdmin может работать без него. Поэтому у нас есть два пути:

  1. Выключить хранилище конфигурации: $cfg['Servers'][$i]['pmadb'] = null; в config.inc.php;
  2. Настроить controluser‘а: создать пользователя в MySQL, предоставить ему определённый набор привилегий, затем добавить его имя и пароль в config.inc.php:
    $cfg['Servers'][$i]['controluser'] = '<ИМЯ_ПОЛЬЗОВАТЕЛЯ>'; 
    $cfg['Servers'][$i]['controlpass'] = '<ПАРОЛЬ>';

     

Для Ubuntu файл конфигурации на Vesta аходится по пути /etc/phpmyadmin/config.inc.php. Открываем данный файл и делаем один из вышеизложенных шагов. Я, к примеру, выключил данную функцию, так как она мне не нужна.