MySQL のパスワードを忘れてしまった時にすること
MySQL
Published: 2018-04-15

動作確認バージョン

$ mysql --version
mysql  Ver 14.14 Distrib 5.6.25, for Linux (x86_64) using  EditLine wrapper

目的

MySQL でパスワードを忘れてしまい、どうすることもできなくなったのでログインできるようにします。

手順

MySQL を停止する

$ sudo /etc/init.d/mysql stop
Shutting down MySQL.. SUCCESS!

セーフモードで起動

$ sudo mysqld_safe --skip-grant-tables &
[1] xxxxx

root ユーザーで MySQL に接続する

$ mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.25 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

root パスワードを設定する

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

-- root ユーザーに root というパスワードを設定します
mysql> update user set password=PASSWORD("root") where User='root';
mysql> flush privileges;

MySQL を起動する

$ sudo /etc/init.d/mysql stop
Shutting down MySQL..180227 03:29:21 mysqld_safe mysqld from pid file /var/lib/mysql/localhost.localdomain.pid ended
 SUCCESS!

[vagrant@localhost ~]$ sudo /etc/init.d/mysql start
Starting MySQL. SUCCESS!

参考URL