web-dev-qa-db-ja.com

MySQLのrootパスワードは何ですか

次のコマンドでmysql-serverをインストールしました

$ Sudo apt install mysql-server mysql-client mysql-common

次に、コマンドを呼び出すとmysql_secure_installationMySQLはrootパスワードの入力を求めます:

uxm

Mysql-serverのパスワードを設定しておらず、パスワードを要求しています。

適切なパスワードを設定するにはどうすればよいですか?デフォルトのパスワードはありますか?

1
Hector

私は解決策を見つけました。 superuserとして実行する必要があります

$ Sudo mysql_secure_installationを実行する必要がありました

また、端末のmysqlにログインする場合は、Sudoする必要があります。

0
Hector

元の投稿者はこの問題の解決策を見つけたと主張していますが この回答では 、それは私には意味がありませんでした。しかし今、私はいくつかのDebian/Ubuntuディストリビューションがソケットベースの認証方法を使用していることを理解しています。デフォルトで有効になっているこの認証方法では、当然、MySQLにアクセスするにはSudoを使用する必要があります。

ただし、一般的に、Sudoを介してmysql_secure_installationを実行する理由はありません。 MySQLはこのようなクライアントトランザクションにSudoを必要としないため、ほとんどの場合、これは意味がありません…ソケットベースの認証が機能していない限り。また、mysql_secure_installationは、MySQL関連のセキュリティ項目の更新を可能にする便利なパッケージでコマンドの山を実行する単なるBashスクリプトです。 ソースコード を見て、私が何を意味するかを確認してください。

したがって、がソケットベースの認証を使用しないシステムを使用していて、同様の問題に直面している場合、解決策はパスワードが空白であるかのいずれかです。古いバージョンのMySQLの場合。したがって、これを実行してMySQLにアクセスします。

mysql -uroot -p

または、mysql_secure_installationの場合は、 Return または Enter パスワードの入力を求められたとき。

または、MySQLの最新バージョン(MySQL 5.7以降だと思います)の場合は、エラーログで次のようなメッセージを確認する必要があります。

「2016-05-16T07:09:49.796912Z1 [注] root @ localhostの一時パスワードが生成されます:8)13ftQG5OYl」

これは このトピックに関するPersonaブログエントリ から抜粋した例です。このMySQLログエントリがどこにあるかについては、CentOS/RedHatサーバーの/var/log/mysqld.logにあるか、Ubuntu/Debianシステムのパッケージインストールからの出力として表示されます。

ただし、エラーログで「temporarypassword」というテキストを確認するだけで、MySQLが最初にインストールされたときに設定した初期のrootパスワードが提供されます。

3
JakeGould