Debian mysql再起動時にAccess denied for user 'debian-sys-maint' |
# /etc/init.d/mysql restart
Stopping MySQL database server: mysqld failed!
Starting MySQL database server: mysqld already running.
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'
debian-sys-maintっていうユーザー、作った記憶無いんですけど。
エラーログも出力されないようで、困ったいたのですが、
MySQL - debian-sys-maint account
http://ubuntuforums.org/archive/index.php/t-112505.html
MySQLの設定
http://pelican.ddo.jp/fukurou/mediawiki/index.php/MySQL%E3%81%AE%E8%A8%AD%E5%AE%9A
上記を参考にさせていただき、以下の手順で復旧しました。
■設定ファイルの変更
debian-sys-maintでログインするときの設定をetc/mysql/debian.cnfで保持しています。
デフォルトではランダムな値が記載されているので、任意の値に変更。
# vi /etc/mysql/debian.cnf
[client]
host = localhost
user = debian-sys-maint
password = [ココを好きなパスワードに変更]
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
user = debian-sys-maint
password = [ココを好きなパスワードに変更]
socket = /var/run/mysqld/mysqld.sock
basedir = /usr
■MySQLのdebian-sys-maintのパスワードを変更
GRANT文を発行して、debian.cnfに設定したパスワードに変更します。
# mysql -uroot -pPassWord
> GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY '[指定したパスワード]' WITH GRANT OPTION;
これで、再起動時にエラーが発生しなくなりました。
うーん。
MySQLをインストールした後の設定で、何か漏れていたんだろうか?

