SpecialistOff.NET / Вопросы / Статьи / Фрагменты кода / Резюме / Метки / Помощь / Файлы

Список вопросов Печать

Error connecting to MySQL: Access denied for user 'da_admin'@'localhost' (using password: YES)


Метки: directadmin mysql mariadb 

Ответы

RemiZOffAlex  Создано: 2018-04-28 09:38:58.535032  Обновлено: 2018-04-28 09:38:58.535032

When connecting to the MySQL screens in DirectAdmin, if this error appears, that would indicated that the "da_admin" user has not been setup correctly.  To resolve this do the following.

1) Make sure the root mysql password works.  If you know it, skip to 2). The mysql root password can be found in the /usr/local/directadmin/scripts/setup.txt if it has not been deleted.  It's under the header "mysql=".  If it cannot be found, then mysqld will have to be restarted with the --skip-grant-tables option.

For MySQL 5.7 on CentOS/RHEL and Debian/Ubuntu please use:

systemctl stop mysqld
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
systemctl start mysqld

For all the other versions of MySQL/MariaDB:

service mysqld stop
mysqld_safe --skip-grant-tables &

That should start up mysql without the need for a root password. Type the following to reset the password now

mysql mysql -e "UPDATE mysql.user SET password=PASSWORD('rootpass') WHERE user='root'; FLUSH PRIVILEGES;"

That will reset the root password for you.

For MySQL 5.7 on CentOS/RHEL and Debian/Ubuntu please type the following to unset "--skip-grant-tables" option for the service:

systemctl unset-environment MYSQLD_OPTS
systemctl stop mysqld
systemctl start mysqld

For all the other versions of MySQL/MariaDB type:

killall -9 mysqld_safe
killall -9 mysqld
service mysqld start


2) Once the root mysql password is set and known, then you can begin the process of resetting the da_admin mysql user.  Type:

mysql -uroot -p

Then press enter.  You'll be asked for the password.  Once in mysql, type:

GRANT ALL PRIVILEGES ON *.* TO da_admin@localhost IDENTIFIED BY 'daadminpass' WITH GRANT OPTION;
FLUSH PRIVILEGES;
quit

That should set the password for da_admin in mysql.

3) Now we need to make sure it's setup correctly for DA to use.   Edit /usr/local/directadmin/conf/mysql.conf and set

user=da_admin
passwd=daadminpass



4) Test it out in DirectAdmin.
 



Some system have a /root/.my.cnf file with a preset password.  This will override the value set in DA.  If you're getting a similar error during backups or restores, try deleting or renaming your /root/.my.cnf so that it doesn't conflict.

Ссылка

Возможно будут интересны и другие вопросы