運用中のWordPressテーブルのプリフィクスを変更

セキュリティ対策として、WordPressのテーブル名のプリフィクスをデフォルトのものから変更した。

  1. wp-config.php内の次の行を変更。
  2. mysqlをroot権限で起動。
  3. データベースを選択し、テーブル一覧を表示。プラグインによっては独自にテーブルを作成するものもあるため、実際に使われているテーブルに何があるのか確認する必要がある。
  4. 表示されたすべてのテーブルを、ひとつずつ名前変更。
  5. データとして登録されているテーブル名も変更しておく。

    この変更をしておかないと、ダッシュボードにアクセスしようとしたときに「このページにアクセスするための十分なアクセス権がありません」とエラーが出てしまう。

  6. mysqlを終了。

以上で無事に変更完了。

Acunetix WP Security」や「All in One WP Security & Firewall」などのプラグインを利用して変更する方法もあるが、広く使われていると思われるAcunetix WP Security (旧名WP Security Scan) は現在確認した限りでは対応バージョンが3.7.1とかなり古く、「fix all critical issues」ボタンをクリックしたらサイトがごっそり削除されてしまった、などの不具合がレビューに複数例報告されていたため、こわいので手作業で変更することに。

こうしたデータベースの変更を行う作業では、事前にディレクトリとデータベースのバックアップ必須。