非対話型ユーザーとしてどのようにログインしますか? (例:mysql)

非対話型ユーザーとしてどのようにログインしますか? (例:mysql)

mysql_upgraderoot として実行する場合は、次を返すコマンドを実行する必要があります。

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エントリにAllowUsersuserが含まれておりmysql、後者のグループDenyGroupsにのみuserが含まれていないことを確認しました。deniedsshmysql

# getent group deniedssh
deniedssh:x:500:

非対話型ユーザーとしてログインするにはどうすればよいですかmysql

ベストアンサー1

あなたの推論に欠陥があるので、mysqlユーザーとしてシェルにログインする必要はありません。あなたが見ている認証失敗はmysqldで発生したものです。 mysqlとの通信に使用するユーザー名とパスワードを知らせる必要がありますmysql_upgrade。これにはUnix認証はまったく含まれていません。

おすすめ記事