About

小樽で3年と少し経験を積み、現在は札幌でコーダーをしております。

赤い電動車いすに乗って生活をしています。色々と不便はありますが、行列待ち等の椅子がない状況では、真価を発揮します。

好き:食べる/スロープ/エレベーター
嫌い:食事制限/段差/階段
※スロープやエレベーターに関しては、もはや好きという感情では収まり切れません。

気づけばグルメブログになってしまわぬよう、しっかり更新頑張ります!

Links

【WordPress】テーブル接頭辞の変更方法

【WordPress】テーブル接頭辞の変更方法

WordPressのデータベース内各テーブル名には、その始まりに決まった文字列が付与されています。
例えばwp_optionswp_postsというテーブル名を例に挙げますと「wp_」この文字列部分をテーブル接頭辞(テーブルプレフィックス)と言います。

このテーブル接頭辞ですが、デフォルトだと「wp_」となっており、セキュリティの観点から良くないとされています。
「インストール時に変更できたけど、デフォルトのままインストールしちゃった…」そんな時のために、今回の記事では途中から変更する方法について紹介していきたいと思います!

※実作業前にはDBのバックアップをお忘れなく

コンテンツ一覧

    SQLコマンドでテーブル名変更

    phpMyAdminをはじめとするデータベース管理ツールや、コマンドで直接など、SQLコマンドが実行できる環境下にて、テーブル名の変更をします。
    例)wp_からEXAMPLE_という接頭辞に変更する場合

    ALTER TABLE wp_commentmeta RENAME TO EXAMPLE_commentmeta;
    ALTER TABLE wp_comments RENAME TO EXAMPLE_comments;
    ALTER TABLE wp_links RENAME TO EXAMPLE_links;
    ALTER TABLE wp_options RENAME TO EXAMPLE_options;
    ALTER TABLE wp_postmeta RENAME TO EXAMPLE_postmeta;
    ALTER TABLE wp_posts RENAME TO EXAMPLE_posts;
    ALTER TABLE wp_termmeta RENAME TO EXAMPLE_termmeta;
    ALTER TABLE wp_terms RENAME TO EXAMPLE_terms;
    ALTER TABLE wp_term_relationships RENAME TO EXAMPLE_term_relationships;
    ALTER TABLE wp_term_taxonomy RENAME TO EXAMPLE_term_taxonomy;
    ALTER TABLE wp_usermeta RENAME TO EXAMPLE_usermeta;
    ALTER TABLE wp_users RENAME TO EXAMPLE_users;
    

    プラグインの使用状況によってテーブルは増えると思いますので、上記コマンドを例に適宜書き加えてください。

    コンテンツ一覧へ戻る

    テーブル内にある変更前の接頭辞を手動変更

    テーブル名を変更した段階でwp-config.phpを書き換えると、サイト自体は問題なく表示されるのですが、このままだとまだダッシュボードに入れない状態なのです。

    原因としましては、テーブル内に変更前の接頭辞が使われたデータが有るためなのです。

    以下が対象テーブルとなりますので、確認してみましょう。

    • EXAMPLE_options
    • EXAMPLE_usermeta

    wp_からEXAMPLE_という変更だと仮定して、それぞれ以下のように手動で調整を行います。

    EXAMPLE_options

    変更前変更後
    wp_user_rolesEXAMPLE_user_roles

    EXAMPLE_usermeta

    変更前変更後
    wp_capabilitiesEXAMPLE_capabilities
    wp_dashboard_quick_press_last_post_idEXAMPLE_dashboard_quick_press_last_post_id
    wp_user_levelEXAMPLE_user_level

    この他にも環境によっては、変更前の接頭辞が残っている可能性がありますので、必要に応じて変更を行ってください。

    コンテンツ一覧へ戻る

    wp-config.phpの書き換え

    後はwp-config.phpの設定をwp_からEXAMPLE_に書き換えるだけですね。

    $table_prefix = 'wp_';
    
    ↓
    
    $table_prefix = 'EXAMPLE_';
    

    コンテンツ一覧へ戻る

    構築途中やリリース時など、途中で接頭辞を変えたい場合にぜひお試しください!

    コメントする

    トップへ戻る