MySQLデータベースを更新する

WordPressでログインが出来なくなった場合に復旧のため直接MySQLデータベースを更新する必要があります。

もしもの時のためにコマンドラインからMySQLデータベースを更新する方法を調べてみました。

# mysql -u root -p
Enter password:
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| test               |
| wp_test            |
| wp_sample          |
+--------------------+
9 rows in set (0.00 sec)
■WordPressのデータベースに接続する
mysql> use wp_test;
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

■テーブル一覧を表示する
mysql> show tables;
+-----------------------------+
| Tables_in_wp_test           |
+-----------------------------+
| wp_test_commentmeta         |
| wp_test_comments            |
| wp_test_links               |
| wp_test_mappress_maps       |
| wp_test_mappress_posts      |
| wp_test_options             |
| wp_test_postmeta            |
| wp_test_posts               |
| wp_test_term_relationships  |
| wp_test_term_taxonomy       |
| wp_test_termmeta            |
| wp_test_terms               |
| wp_test_usermeta            |
| wp_test_users               |
+-----------------------------+
14 rows in set (0.00 sec)

■「siteurl」「home」の内容を確認する。
mysql> select * from wp_test_options where option_name = 'siteurl';
+-----------+-------------+--------------------------+----------+
| option_id | option_name | option_value             | autoload |
+-----------+-------------+--------------------------+----------+
|         1 | siteurl     | https://horiejoho.dip.jp | yes      |
+-----------+-------------+--------------------------+----------+
1 row in set (0.00 sec)

mysql> select * from wp_test_options where option_name = 'home';
+-----------+-------------+--------------------------+----------+
| option_id | option_name | option_value             | autoload |
+-----------+-------------+--------------------------+----------+
|         2 | home        | https://horiejoho.dip.jp | yes      |
+-----------+-------------+--------------------------+----------+
1 row in set (0.00 sec)

■「siteurl」を変更してみます
mysql> update wp_test_options set option_value = 'https://horiejoho.dip.jp/wp/' where option_name = 'siteurl
';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

■変更されているか確認します
mysql> select * from wp_test_options where option_name = 'siteurl';
+-----------+-------------+------------------------------+----------+
| option_id | option_name | option_value                 | autoload |
+-----------+-------------+------------------------------+----------+
|         1 | siteurl     | https://horiejoho.dip.jp/wp/ | yes      |
+-----------+-------------+------------------------------+----------+
1 row in set (0.00 sec)

■元に戻しておきましょうね
mysql> update wp_test_options set option_value = 'https://horiejoho.dip.jp' where option_name = 'siteurl';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

■「siteurl」が元に戻っていることを確認します
mysql> select * from wp_test_options where option_name = 'siteurl';
+-----------+-------------+--------------------------+----------+
| option_id | option_name | option_value             | autoload |
+-----------+-------------+--------------------------+----------+
|         1 | siteurl     | https://horiejoho.dip.jp | yes      |
+-----------+-------------+--------------------------+----------+
1 row in set (0.00 sec)

mysql> exit
Bye

「home」を変更する場合は、「siteurl」を「home」に変更して下さい。

MySQLのデータベースへ接続する方法

MySQLのデータベースへ接続する方法です。MySQLへログインしたら、データベース一覧を表示します。
接続するデータベース名を確認したら、「use データベース名」コマンドを使用して接続します。

# mysql -u root -p
Enter password:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| test               |
| wp_test            |
| wp_sample          |
+--------------------+
9 rows in set (0.00 sec)

mysql> use wp_test;
Database changed

簡単でしたね♪

WordPressにログイン出来なくなった場合の対処方法は?弊社にお問い合わせ下さい♪

WordPressにログイン出来なくなった場合の対処方法です。

よくある失敗なのですが、WordPressの「設定」->「一般」の「WordPressアドレス(URL)」や「サイトアドレス」を誤って変更した場合、WordPressにログイン出来なくなってしまいます。

弊社も一度やっちゃいました。

WordPressにログイン出来なくなった場合

この赤で囲った個所を変更する場合は要注意です!

MySQLに長けている方は自分で修復することが出来ます。が、もし心配な方は是非弊社にお問い合わせ下さい。

まずは、MySQLデータベースの情報を確認します。

WordPressがインストールしてあるディレクトリにある「wp-config.php」というファイルを開いてください。


// 注意: 
// Windows の "メモ帳" でこのファイルを編集しないでください !
// 問題なく使えるテキストエディタ
// (http://wpdocs.sourceforge.jp/Codex:%E8%AB%87%E8%A9%B1%E5%AE%A4 参照)
// を使用し、必ず UTF-8 の BOM なし (UTF-8N) で保存してください。

// ** MySQL 設定 - この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define('DB_NAME', 'データベース名');

/** MySQL データベースのユーザー名 */
define('DB_USER', 'ユーザー名');

/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'パスワード');

/** MySQL のホスト名 */
define('DB_HOST', 'localhost');

/** データベースのテーブルを作成する際のデータベースの文字セット */
define('DB_CHARSET', 'utf8');

/** データベースの照合順序 (ほとんどの場合変更する必要はありません) */
define('DB_COLLATE', '');

データベース名、ログイン用のユーザー名とパスワードを確認します。

ほとんどのレンタルサーバーでは、「MySQLマネージャ」が用意されていますので、これを使用してWordPressのデータベースを直接修正します。

「MySQLマネージャ」を起動したら、「wp_options」というデータベースを探します。

WordPressにログイン出来なくなった場合

次に「wp_options」データベース内の「home」と「siteurl」を探します。

WordPressにログイン出来なくなった場合

編集を選択し、URLを修正します。

WordPressにログイン出来なくなった場合

実行ボタンを押下するとデータベースに変更が反映されます。これでWordPressのログインが可能になります。めでたしめでたし♪

コマンドラインで直接MySQLデータベースを更新する方法はコチラを参照下さい。