Ошибка при входе в панель Plesk: 'Access denied for user 'admin'@'localhost' (using password: YES)'
Опубликовано robot on 29 April 2012 09:48

1. Если вы поменяли имя пользователя admin в mysql или изменили его пароль, то при  попытке войти в Plesk, вы увидите ошибку вида:

ERROR: Zend_Db_Adapter_Exception: SQLSTATE[HY000] [1045] Access denied for user 'admin'@'localhost' (using password: YES)

или

ERROR: PleskFatalException Unable to connect to database: saved admin password is incorrect. 0: common_func.php3:93 psaerror(string 'Unable to connect to database: saved admin password is incorrect.') 1: auth.php3:127 Additionally, an exception has occurred while trying to report this error: Zend_Exception  No entry is registered for key 'translate' (Abstract.php:144)

2. При создании резервной копии базы данных процесс завершается со следующим сообщением об ошибке:

# MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysqldump -uadmin psa > /tmp/psa.`date +%F_%H.%M`.sql
mysqldump: Got error: 1045: Access denied for user 'admin'@'localhost' (using password: YES) when trying to connect

3. Команда plesk db возвращает следующее сообщение об ошибке:

ERROR 1045 (28000): Access denied for user 'admin'@'localhost' (using password: YES)

 

Для решения данной проблемы выполните следующие действия:

1. Подключитесь к своему серверу по SSH

2. Получите хэшированный пароль администратора MySQL

# cat /etc/psa/.psa.shadow
$AES-128-*****************************************************

3. Подключитесь к MySQL:

# MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysql -u admin mysql

Если соединение с сервером MySQL не выполняется для пользователя admin, перейдите к шагу 6.

4. Обновите пароль администратора, заменив « $AES-128-***» хешированным паролем с шага 2:

mysql> SET PASSWORD FOR 'admin'@'localhost'=PASSWORD('$AES-128-***');

5. Попробуйте войти в Plesk, если он все еще недоступен, перейдите к шагу 10.

6. Добавьте запись skip-grant-tables в раздел [mysqld] конфигурационного файла /etc/my.cnf:

# cat /etc/my.cnf
...
[mysqld]
skip-grant-tables
...

7. Перезапустите службу MySQL:

# systemctl restart mariadb.service

8. Подключитесь к MySQL и проверьте её версию:

# mysql -uadmin mysql mysql> SELECT VERSION();

9. Обновите пароль администратора, заменив « $AES-128-***» хешированным паролем с шага 2:

  • для MySQL 5.7.6 и выше:

mysql> UPDATE mysql.user SET authentication_string=PASSWORD('$AES-128-***) where User='admin';

  • для MariaDB 10.1.12 и ниже и MySQL 5.7.5 и ниже:

mysql> UPDATE mysql.user SET Password=PASSWORD('$AES-128-***') where User='admin';

10. Если используется MariaDB 10.1.12 или ниже или MySQL 5.7.5 или ниже, выполните следующий запрос:

mysql> select Password,authentication_string,plugin from mysql.user where User='admin'\G
*************************** 1. row ***************************
Password: *4046DBB9C72F8187309519A5F5664DF1D57C1D40
authentication_string: *4046DBB9C72F8187309519A5F5664DF1D57C1D40
plugin: mysql_native_password
1 row in set (0.00 sec)

11. Если вывод команды аналогичен тому, что приведён выше - то выполните следующий запрос. Если нет - перейдите к шагу 12.

mysql> UPDATE mysql.user SET plugin='', authentication_string='' WHERE user.plugin='mysql_native_password' AND user.authentication_string<>'' AND user.Password<>'' AND user.User='admin';

12. Удалите запись skip-grant-tables из файла /etc/my.cnf и перезапустите MySQL.

 

После этих действий панель управления Plesk станет доступна. 

(4 голос(а))
Эта статья помогла
Эта статья не помогла