旦那デスノートを始め、義父母デスノートや毒親デスノートなどの私が運営しているSNSは、全てエックスサーバーを使っています。滅多にみる事のないサーバー情報を見たら、新サーバー移行のお知らせ、なんてのが載ってます。
KUSANAGI(クサナギ)という仕組みらしく、Wordpressの速度向上に特化したシステムらしいです。無料でサーバーを変えることが出来るらしく、試しに移行してみたら、めちゃくちゃ爆速になってビックリしました。大規模なアクセス数を抱える古参のXSERVER利用者は、今すぐにKUSANAGIに移行した方が良いです。
運営しているSNSで旦那デスノート以外は、全て同じサーバーを使っています。KUSANAGIサーバーに移行した義父母デスノート、毒親デスノートが入っているサーバーは明らかに応答速度、表示速度が速くなりました。
良い結果が分かったので、旦那デスノートが入っているサーバーも移行しようとしたら、問題が発生。サーバー移行はデータベース容量が2GB以内、という制約がありました。
旦那デスノートのデータベース容量は、3.7GBです。データベース内の、どこのテーブルが容量を占めているかというと、「wp_usermeta」テーブルです。「wp_usermeta」テーブルが2.9GBもあります。ここは、登録した会員さんに関する情報、名前やメールアドレスなどが入っているテーブルです。
今、会員数が29,000人なので、1人あたり100kbの情報量を持っている、ということになります。新サーバーへ移行するためには、データベース容量を減らし、最適化ダイエットをして、2GB以内にしないといけません。
ここでwp_usermetaテーブルだけを整理しようとしてはいけません。やるべきことは、会員数を減らすことです。wp_usermetaテーブルは、あくまで会員1人1人に紐付いているので、wp_usermetaテーブルのレコードだけを消すと、会員情報が狂います。
なので、会員を減らすことを考えるべきでしょう。会員数はサイトのアピール部分でもあるのですが、爆速サーバーになるためには、いったん犠牲にしないといけないです。
2GB以内に収めるには、約9,000人を削除しないといけません。ということで、対策として、会員を削除するのですが、判断材料として、ログインしていない会員を削除する、ということにしました。
ただし、ワードプレス標準ではログイン時間を取得していないので、全ての会員に対し最終ログイン時間を取得するようにしました。1ヶ月ほど最終ログイン時間を取得し、ログインした形跡の無い会員を削除する、という流れです。
プラグインの「When last login」を導入し、各会員の最終ログイン時間を記録し、1ヶ月後にログインしていない会員を削除し、データベースを2GB以内になるように対策する予定です。
1ヶ月経ち、無事に旦那デスノートをエックスサーバーのクサナギに移行しました。データベース最適化に関することをも書いています。もしよろしければ参考にしてみてください。
ワードプレスにおいて会員を10,000人以上ガッツリ削除するときはusermetaテーブルを最適化すること