MySQL rootアカウントにパスワードがありませんか?

MySQL rootアカウントにパスワードがありませんか?

私はMySQLサーバーをインストールしましたが、rootアカウントにパスワードがありません。ルートパスワードを3回入力するように求められましたが、パスワードを使用したくなかったため、3回空白のままにしました。しかし、今はこれが良い考えではないかもしれないようです。

ワークベンチから接続しようとしましたが(今すぐパスワードを入力)、エラーが発生します。Access denied for user 'root'@'localhost'. なぜパスワードがないのですか?

これで、インストール時にダミーのパスワードを入力した場合は問題がないことに気づき、次のように入力して設定しようとしました。mysqladmin -u root -p password空のパスワードを入力して再入力すると、次のような結果が表示されます。

mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost'

コンソールに「mysql」と入力すると、次のような結果が表示されます。

Access denied for user 'me'@'localhost' (using password: NO)

パスワードなしでrootアカウントを持つことができ、そうであれば大きく問題にならない場合はパスワードなしで維持したいのですが、それが悪い場合はどのように設定するか教えてください。パスワード。パスワードがない方が良い場合は、パスワードなしで接続する方法を教えてください :)

エディタ:Linuxディストリビューション:Mint Cinnamon 64ビットMySQLバージョン:5.7

答え1

デフォルトでは、Debian / Ubuntu / Mintには管理アクセス権を持つユーザー、つまりMySQLを終了するために使用されるユーザーがありますdebian-sys-maint

/etc/mysql/debian.cnf次の形式のファイルに移動します。

[client]
host     = localhost
user     = debian-sys-maint
password = XXXXXXXX
socket   = /var/run/mysqld/mysqld.sock 

MySQLをインストールするときにランダムに生成されたパスワードをここから取得します(たとえば、サーバーによって異なります)。

次に、次のコマンドを使用してMySQLにログインします。

mysql -udebian-sys-maint -pXXXXXXXX

その後、ルートパスワードを変更できます。

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password');

これはMySQL 5.7でわずかに変更されました。見るMySQL v5.7を使用してMySQLの「root」パスワードを変更するには?

答え2

以下を実行する必要があります。

#mysql_secure_installation

mysql サーバーを新規インストールするために root パスワードを設定できます。

関連情報