web-dev-qa-db-ja.com

最初のインストール後にMySQLのデフォルトのrootパスワードをリセットできない

Red Hat Enterprise Linux 5.5サーバーにmysql 5.7をインストールしました。インストール後に次のコマンドを実行しようとすると、root @ localhostのパスワードを要求されます。

/usr/bin/mysql_secure_installation

Rootパスワードを設定したことがなく、Linuxにrootユーザーとしてログインしています。

次に、ルートパスワードをリセットするための次のドキュメントを見つけて、それに従いました。

https://dev.mysql.com/doc/refman/5.5/en/resetting-permissions.html

しかし、次のコマンドでサーバーを起動した後でも、パスワードを要求しています

/etc/init.d/mysqld start --skip-grant-tables &

init-fileオプションを使用してサーバーを起動しようとしましたが、成功しませんでした。

パスワードを正しくリセットする方法、またはデフォルトのMySQLパスワードを知っている人はいますか?

1

認証なしでサービスを再起動します

Ubuntu/Debian

service mysql stop
service mysql start --skip-grant-tables --skip-networking

その他のシステム

sysv Linuxを使用している場合は、これを使用してください

/etc/init.d/mysqld stop
/etc/init.d/mysqld start --skip-grant-tables --skip-networking &

リセット

次に、rootとしてログインする必要があります

mysql -u root -p

次に、ログイン時に実行します

FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

他のガイドとの違い

これには多くの「ガイド」がありますが、明確にするために、

  • 一部のガイドでは、5-7.6より前の古いSET PASSWORD構文を使用していますが、これを使用しないでください。
  • 一部のガイドは--skip-networkingを使用していません。これは安全ではありません。
  • 一部のガイドは、エラーが発生しやすい-u rootに接続していません。
1
Evan Carroll