mysql_upgrade
root として実行する場合は、次を返すコマンドを実行する必要があります。
Looking for 'mysql' as: mysql
Looking for 'mysqlcheck' as: mysqlcheck
Running 'mysqlcheck' with connection arguments: '--port=3306' '--socket=/var/lib/mysql/mysql.sock'
mysqlcheck: Got error: 1045: Access denied for user 'root'@'localhost' (using password: NO) when trying to connect
FATAL ERROR: Upgrade failed
そのため、ユーザーとしてログインする必要があると判断しましたmysql
。どうすればいいですか?
mysql
ユーザーのパスワードを設定しpasswd
てログインしようとしました。
$ ssh -l mysql 12.34.56.78
[email protected]'s password:
Permission denied, please try again.
私はrootとしてログインし、mysql
シェルを設定しましたchsh -s /bin/bash mysql
。/etc/ssh/sshd_config
エントリにAllowUsers
userが含まれておりmysql
、後者のグループDenyGroups
にのみuserが含まれていないことを確認しました。deniedssh
mysql
# getent group deniedssh
deniedssh:x:500:
非対話型ユーザーとしてログインするにはどうすればよいですかmysql
?
ベストアンサー1
あなたの推論に欠陥があるので、mysqlユーザーとしてシェルにログインする必要はありません。あなたが見ている認証失敗はmysqldで発生したものです。 mysqlとの通信に使用するユーザー名とパスワードを知らせる必要がありますmysql_upgrade
。これにはUnix認証はまったく含まれていません。