最近、MySQLをubuntuシステムにインストールしましたが、インストール中にrootユーザーのパスワードを入力するプロンプトが表示されませんでした。インターネットで1日解決策を探した後、rootユーザーのログインパスワードを変更しようとしました。
1.インストール
リンクを参照できます:https://blog.csdn.net/zou_albert/article/details/114932025
$ sudo apt-get install mysql-server
$ apt install mysql-client
$ apt install libmysqlclient-dev
2.MySQLにログインします
mysql -u root -p
パスワードを入力してください。入力できる場合は、以下を読む必要はありません。ログインを求められた場合は、セーフモードでMySQLにログインできるようにするため、パスワードをバイパスしてログインできます。 、ログイン後にパスワードを変更します。
3.セーフモードでMySQLにログインします
$ sudo /etc/init.d/mysql stop
-------------------------------------
[sudo] wl 的密码:
[ ok ] Stopping mysql (via systemctl): mysql.service.
$ sudo /usr/bin/mysqld_safe --skip-grant-tables --skip-networking &
最初の行を入力してMySQL操作を終了します。成功すると、次の2行が表示されます。4行目を入力すると、次の手順のために別のターミナルウィンドウを開くことができます。ただし、通常、エラーは次のようになります。 UNIXソケットファイルのmysqld_safeDirectory '/ var / run / mysqld'などが報告されましたが存在しません
解決策:そこで、次のコードを入力しようとしました。
$ sudo mkdir -p /var/run/mysqld
$ sudo chown mysql:mysql /var/run/mysqld
最後にもう一度入力してください:
sudo /usr/bin/mysqld_safe --skip-grant-tables --skip-networking &
この時点では、エラーは表示されません。別のターミナルポートを開いて、パスワードなしでMySQLにログインしてみてください。
mysql -u root
この時点でMySQLに入ることができるはずです、操作を続けます
> use mysql;
> update user set authentication_string=PASSWORD("这里输入你要改的密码") where User='root'; #更改密码
> update user set plugin="mysql_native_password"; #如果没这一行可能也会报一个错误,因此需要运行这一行
> flush privileges; #更新所有操作权限
> quit;
4.変更されたパスワードを使用してMySQLにログインします
上記の一連の操作の後、変更したパスワードで正常にログインできるようになります。
> sudo /etc/init.d/mysql stop
> sudo /etc/init.d/mysql start # reset mysql
> mysql -u root -p
1行目は最初にデータベース操作を終了し、2行目はデータベースサービスを再開し、3行目はrootユーザーとしてログインします。