• LIGの広告成功事例
WEB

MySQLでrootパスワードを忘れた場合の対処方法

MySQLでrootパスワードを忘れた場合の対処方法

こんにちは、管理課でありながらエンジニア(?)のtetsuです。

MySQLでrootパスワードを紛失したり、またはパスワードが行方不明になったりしたとき、MySQLへの接続が出来なくなったら冷や汗ものですよね?

よくこんなエラーに遭遇します。

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

今回は、このような場合でも、MySQLのrootのパスワードをリセットする方法を紹介します。

サーバの環境はCentOS、MySQL上での説明になります。

MySQLでrootパスワードを忘れた場合の対処方法

サーバへ接続

まずはサーバへSSH接続をします。これを行えないと話が始まりません。笑

SSH接続については省略します。

起動しているMySQLを停止

MySQLサービスを下記のコマンドで一旦停止させます。

service mysqld stop

MySQLをセーフモードで起動

停止したMySQLサービスを下記コマンドを使用してセーフモードで起動させます。

mysqld_safe --skip-grant-tables &

MySQLへrootでログイン

セーフモードで起動したMySQLに下記コマンドを使用してrootでログインします。

mysql -u root

rootのパスワードのリセット

無事にMySQLへログインできたら、下記のクエリーでrootパスワードを再設定します。

use mysql;

update user set password=PASSWORD("ここにパスワードを記述") where User='root';

flush privileges;

ここで、「Query OK」と表示されれば完了です。

パスワードのリセットが完了したので、下記コマンドでMySQLからログアウトします。

quit

セーフモードのMySQLを停止

最後に、セーフモードで起動しているMySQLを一度停止させ、下記コマンドで通常モードで再起動します。

service mysqld stop

service mysqld start

以上で、作業は終わりです。再度rootでログインできるかどうかをお試しください。

最後に

基本的にはrootでMySQLへの接続は行うことは少ないとは思いますが、使ってない分パスワードを紛失してしまう場合もあるので、しっかり管理をするようにしましょう!

mysql> quit

Bye!!


LIGでは、エンジニアを絶賛募集中!
http://liginc.co.jp/recruit/mid_career

この記事を書いた人

tetsu
tetsu 管理部 2012年入社
手塚です。LIGの土台を支えています。インフラからプログラミング、果ては経理、会計までと、広い守備範囲でみんなをサポートしています。

こちらもおすすめ

理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL (WEB+DB PRESS plus)

理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL (WEB+DB PRESS plus)

  • 著者奥野 幹也
  • 価格¥ 3,110(2015/12/11 15:51時点)
  • 出版日2015/03/10
  • 商品ランキング20,761位
  • 単行本(ソフトカバー)384ページ
  • ISBN-104774171972
  • ISBN-139784774171975
  • 出版社技術評論社