mariadbまたはmysqlでパスワードを忘れて取り戻す

1373 ワード

自分の予備を残しておく
Linuxにmysqlやmariadbをインストールした後、パスワードを提示しない場合や、パスワードを忘れた場合は、パスワードを取り戻す必要があります.
ネット上には解決策がたくさんあります.こちらは私のやり方で簡単なものをください.
1、/etc/mysql/でmyを探します.cnfまたはmariadb.cnfまたはその他の*-server.cnfは、[mysqld]という行の内容が入っていて、下にskip-grant-tablesを貼って保存します.
そして
Servicemysql restart再起動.
2、mysql-uroot-p#をそのまま押すとrootパスワードを入力する必要はありません.
新しいパスワードを入力します(新しいパスワードが123456の場合)
update mysql.user set password=password('123456') where User="root"and Host="localhost";
flush privileges;#システム認可表の更新
3、ステップ1のskip-grant-tablesを削除し、終了を保存する
次にサービスmysql restartを再起動します.
4、次はmysql-uroot-pでパスワードを入力してログインできます
PS:まだだめなら、一般ユーザーモードではログインできませんが、rootでは可能です.
sudo mysql -u root
SELECT user, plugin FROM user;
UPDATE user SET plugin="";   // without WHERE clause
UPDATE user SET password=PASSWORD("my_password") WHERE user="root";
FLUSH PRIVILEGES;