Access denied for user debian-sys-maint — ошибка которая появляется при пароле системного пользователя debian-sys-maint с которым MySQL по какой-то причине не может получить доступ к таблицам баз данных. Часто такие ошибки возникают при настройке репликации MySQL — например, при настройке Galera Cluster.
Учетная запись debian-sys-maint используется сервисами для взаимодействия с MySQL. Пароль и сокет для подключения задаются в /etc/mysql/debian.cnf. Учетной записью удобно пользоваться для получения доступа тогда когда с реквизитами root подключиться по не удаётся.
debian-sys-maint также как root является суперпользователем. Из под debian-sys-maint можно зайти в консоль БД и, например, поменять пароль root.
Access denied for user debian-sys-maint
Следствие ошибки часто — невозможность остановить или перезапустить сервер баз данных. Чтобы исправить ошибку достаточно обносить пароль системного пользователя debian-sys-maint и привести его в соответствие тому, что задан в файле /etc/mysql/debian.cnf
Полностью ошибка может выглядеть так:
Got error: 1045: Access denied for user 'debian-sys-maint'@'localhost' (using password: YES) while connecting to the MySQL server
Просмотреть файл можно при помощи cat или less
less /etc/mysql/debian.cnf
[client]
host = localhost
user = debian-sys-maint
password = Fae4aeTggfiemei6Ohp
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
user = debian-sys-maint
password = Fae4aeTggfiemei6Ohp
socket = /var/run/mysqld/mysqld.sock
basedir = /usr
Затем нужно авторизоваться в консоли сервера баз данных с правами пользователя root и выполнить запрос на обновление пароля debian-sys-maint
mysql> GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY 'Fae4aeTggfiemei6Ohp';
Обновляем информацию о привилегиях
mysql> FLUSH PRIVILEGES;
Пароль на этом этапе уже обновлен,но для верности можно перезапустить MySQL.
systemctl restart mysql
После произведенных действий пароль обновился и ошибки больше возникать не должно — в случае с репликацией на всех серверах, которые в ней участвуют для пользователя debian-sys-maint стоит задавать одинаковый пароль.
Читайте про то как работать с пользователями MySQL.