WordPressのデータベース・テーブル名の接頭辞(プレフィックス)を簡単に変えられる方法を解説します。
接頭辞(プレフィックス)を変えるには「All In One WP Security & Firewall」というプラグインを使うのが簡単です。
私もいまだにデータベースを触るのは緊張するので、今回のような簡単に変更できるプラグインに頼っています。
接頭辞(プレフィックス)を変えることは、WordPressの重要なセキュリティ対策のひとつです。
悪意のある攻撃者がデータベースに直接アクセスしにくい状態を作ります。
世界中で使われているWordPressは攻撃対処にもなりやすいので、サイトが大きくならないうちに変えておくべきです。
なるべく初期の段階、インストール直後などに変えておくことをオススメします。
サイトが大きくなってからでは、データベースにアクセスするのも緊張します。
プラグイン「All In One WP Security & Firewall」を使う
WordPressのデータベース・テーブル名の接頭辞を変更するには、セキュリティ用のプラグインを使うのがもっとも簡単です。
セキュリティプラグインはたくさんありますが「All In One WP Security & Firewall」がオススメです。
他にも接頭辞を変更するのに「Acunetix WP Security」というプラグインもありますが、こちらは2年以上更新されていないのでオススメできません。
【注意】テスト環境を用意する
セキュリティのプラグインは、サーバーのデータベース内に新しくテーブルを自動作成します。
さらにはサーバーを制御する「.htaccess」を書き換える場合もあります。
これらの動作でレンタルサーバーによっては、エラーを起こす可能性が考えられます。
初心者だと手に負えないほどの問題になりかねないので、別のWordPressを使ってテストをしましょう。
また、インストール時は問題がなくても、プラグインの設定を触ってエラーを起こす可能性もあります。
万が一、サーバーエラーが起きた場合は、FTPソフトでプラグインを削除して、プラグインによって書き換えられた「.htaccess」を戻さないといけません。
ただしAll In One WP Security & Firewallプラグインは、「.htaccess」のバックアップもできるので安心です。
All In One WP Security & Firewallをインストールする
まずはWordPressのプラグイン>新規追加で「All In One WP Security & Firewall」を検索します。
プラグインが出てきたら有効化でインストールします。
WordPressの左ナビにWP Securityが出現します。
「.htaccess」をバックアップする
念のため「.htaccess」をバックアップしましょう。
WP Security>Settingsに移動します。
.htaccess Fileタブに移動して、Backup .htaccess Fileボタンを押します。
以上の手順だけで、サーバーの「wp-content」フォルダに「aiowps_backups」フォルダが作成されます。フォルダの中には「.htaccess」の内容がテキストデータで保存されています。
「.htaccess」の復元は、Restore .htaccess Fileボタンで行います。
この「aiowps_backups」フォルダは、プラグインを削除しても消えません。
All In One WP Security & Firewallプラグインは、他にもデータベースのバックアップ機能を備えています。
データベースをバックアップする
データベース名の接頭辞を変更する前に、データベースのバックアップを取ります。
というのもプラグイン側で強く推奨されているからです。
WordPressの左ナビのWP Security>Database Securityにアクセスします。
赤枠内の文章は「接頭辞(Prefix)の変更前にデータベースのバックアップを取ってください」と書かれています。
赤文字は「接頭辞(Prefix)が『wp_(デフォルト)』になっているので、サイトのセキュリティを強化しましょう」と書かれています。
データベースのバックアップは簡単です。
DB Backupタブに移動して、Create DB Backup Nowボタンを押します。
先ほどの「.htaccess」バックアップと同じ場所「wp-content>aiowps_backups」にデータベースのバックアップが保存されます。
データベース名の接頭辞を変更する
それではデータベース名の接頭辞を変更していきます。
DB Prefixタブに戻ります。
Choose your own DB prefix by… の左枠に任意の接頭辞(Prefix)を入力します。最後に「_(アンダーバー)」を入れます。
Check this if you want the plugin…のチェックは、プラグインに自動で6文字の 接頭辞を生成させます。
今回は当サイトのテスト環境でnomktest_にしました。
できる限り推測しにくい文字列にしましょう。
WordPressのデータベースを扱うプログラムを自作する場合でも、記憶する必要のない文字列です。
Change DB Prefixボタンを押して完了です。
必要に応じてプラグインを削除
データベースの接頭辞を変更するだけの目的であれば、プラグインは削除して構いません。
(私は削除しています)
All In One WP Security & Firewallプラグインは、WordPressのセキュリティを高める機能が他にも備わっています。
さらにバックアップもできるので、今後も使用される方は、NETAONEさんの記事が参考になると思います。
phpMyAdminにて確認
phpMyAdminにアクセスできる人は確認しておきましょう。
Xサーバーをお使いの方は以下の方法でphpMyAdminへアクセスできます。
もしユーザー名とパスワードを忘れた場合は、FTPにてWordPressディレクトリにある「wp-config.php」から確認できます。
MySQL データベースのユーザー名とMySQL データベースのパスワードをご確認ください。
先ほど設定した「nomktest_」がテーブル名に付きました。
プラグインが自動生成したテーブルは、プラグインを削除しても残ります。
プラグインの削除後は、phpMyAdminの操作に慣れているのであれば、「_aiowps_」のテーブルを削除して構いません。
以上にて作業は完了です。
初心者には難しいデータベースの接頭辞変更
WordPressのデータベース・テーブル名の接頭辞は、プラグインを使わないと初心者には難しいと思います。
プラグインを使わない方法については、わどぷれさんの以下の記事が参考になります。
wp-config.phpを書き換え後、phpMyAdminからSQL文を入力して変更します。
私も一度この方法で変えたことがあります。
普段あまりSQL文に慣れていないので、データベースを触るのはかなり緊張しました。
ちょっと初心者だと厳しいですよね。
プラグインを使えば余計なデータベースやフォルダができてしまいますが、直接phpMyAdminを触るリスクがなくなります。
それでもWordPressのセキュリティ対策としては、データベースのテーブル名の変更は重要です。
まとめ
WordPressのセキュリティプラグインを試している時、データベース・テーブル名の接頭辞(プレフィックス)が変更できることを知りました。
もしかしたらプラグインで接頭辞(プレフィックス)だけ変えて、後は削除すれば良いのでは? と思って試したところ上手くいきました。
All In One WP Security & Firewallプラグインは、手軽にバックアップも取れるのでオススメです。
「.htaccess」のバックアップ機能もユニークですね。
WordPressのスキルをアップさせるのであれば、いずれはSQLも学ぶことになると思います。
それまでの間はプラグインを頼るのが良いでしょう。
私もそうでしたが、簡単な方法でもいいからデータベースに慣れることで、少しずつWordPressやWEBが理解できるようになっていきます。