目次
MySQL Version
MySQL5.6.20
状況
rpmでインストールしたMySQLにログインする際にパスワードがわからずログインできなかったので...
仮想環境へはrootでログイン。
対処手順
1. MySQLを停止
もしMySQLが起動している場合は以下のコマンドで停止させます。
service mysql stop
2. MySQLをセーフティモードで起動
別でターミナルを起動させ、 以下のコマンドでMySQLをセーフティモードで起動させます。
sudo mysqld_safe --skip-grant-tables --skip-networking
3. MySQLへログイン
元のターミナルに戻りMySQLへログインする。
ユーザー名とパスワードは不要。
[vagrant@localhost ~]$ mysql
4. 「mysql」データベースを指定
mysqlデータベースにユーザーやパスワード情報が格納されているため使用データベースを「mysql」に指定する。
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
5.テーブルを確認する。
userテーブルにユーザー関連の情報が格納されている。
mysql> show tables; +---------------------------+ | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | event | | func | | general_log | | help_category | | help_keyword | | help_relation | | help_topic | | innodb_index_stats | | innodb_table_stats | | ndb_binlog_index | | plugin | | proc | | procs_priv | | proxies_priv | | servers | | slave_master_info | | slave_relay_log_info | | slave_worker_info | | slow_log | | tables_priv | | time_zone | | time_zone_leap_second | | time_zone_name | | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+ 28 rows in set (0.00 sec)
6. 現在登録されているユーザーを確認
mysql> select * from user; +-----------------------+------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+--------+-----------------------+------------------+ | Host | User | Password | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload_priv | Shutdown_priv | Process_priv | File_priv | Grant_priv | References_priv | Index_priv | Alter_priv | Show_db_priv | Super_priv | Create_tmp_table_priv | Lock_tables_priv | Execute_priv | Repl_slave_priv | Repl_client_priv | Create_view_priv | Show_view_priv | Create_routine_priv | Alter_routine_priv | Create_user_priv | Event_priv | Trigger_priv | Create_tablespace_priv | ssl_type | ssl_cipher | x509_issuer | x509_subject | max_questions | max_updates | max_connections | max_user_connections | plugin | authentication_string | password_expired | +-----------------------+------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+--------+-----------------------+------------------+ | localhost | root | *ECF1420B4084E293DB63AAF9E3D7E2DE902B4CB3 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | | | | | 0 | 0 | 0 | 0 | | | Y | | localhost.localdomain | root | *ECF1420B4084E293DB63AAF9E3D7E2DE902B4CB3 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | | | | | 0 | 0 | 0 | 0 | | | Y | | 127.0.0.1 | root | *ECF1420B4084E293DB63AAF9E3D7E2DE902B4CB3 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | | | | | 0 | 0 | 0 | 0 | | | Y | | ::1 | root | *ECF1420B4084E293DB63AAF9E3D7E2DE902B4CB3 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | | | | | 0 | 0 | 0 | 0 | | | Y | +-----------------------+------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+--------+-----------------------+------------------+ 4 rows in set (0.00 sec)
※ちなみにパスワードは暗号化されている
7. 既存のパスワードの変更
UPDATE user SET Password=PASSWORD('root') WHERE User='root';
パスワードの変更が終わったら、mysqlを抜けて、先ほど別ターミナルで起動したセーフティモードのmysqlも停止させる。
8. MySQLログアウト
セーフティモード起動しいるMySQLからログアウトします
9. MySQLのプロセス停止
以下のコマンドで停止します。
ctrl + z
10. MySQLを通常起動
元のターミナルへ戻りMySQLを起動します。
service mysql start
11. パスワード変更後のMySQLへログイン
再度ログインしなおす。
mysql -u root -p
12. 設定したパスワードを入力
できた
以上