แก้ไขปัญหาเมื่อเปลี่ยน Prefix ใน MySql ของ WordPress แล้วขึ้นเตือน “You do not have sufficient permissions to access this page.”

เรื่องมันมีอยู่ว่าย้าย WordPress จากเครื่องตัวเอง Upload ขึ้น Server แล้วมีการเปลี่ยน Prefix ของ MySQL database ไปทีนี้เมื่อ Login เข้า wp-admin จึงเกิดข้อความแจ้งเตือนว่า “You do not have sufficient permissions to access this page.” นั่งหาวิธีอยู่พักนึงเจอเลยนำมาโพสเผื่อคนอื่นจะเกิดปัญหานี้เช่นกันครับ
ยกตัวอย่างเป็นเดิม prefix ที่ WordPress ให้มาจะเป็น “wp_” แล้วผมต้องการเปลี่ยนเป็น “wp08_” วิธีการแก้ไขตามด้านนี้ครับ

  1. เข้าไปที่ตาราง “wp08_usermeta” และดูในคอลัมน์ “meta_key” ให้เปลี่ยนค่าต่อไปนี้ wp_capabilities, wp_user_level, และ wp_autosave_draft_ids ไปเป็น wp08_capabilities, wp08_user_level และ wp08_autosave_draft_ids
  2. จากนั้นดูในตาราง wp08_options และดูในคอลัมน์ให้เปลี่ยนค่า wp_user_roles ไปเป็น wp08_user_roles

หรือจะใช้ SQL ที่ผมเขียนขึ้นมานี้ไปรันได้เลยก็ได้ครับ แนะนำว่า backup ตาราง wp08_usermeta และ wp08_options ก่่อนนะครับเผื่อผิดพลาด

UPDATE  wp08_usermeta  SET  meta_key = REPLACE( meta_key ,'wp_','wp08_' );
UPDATE  wp08_options  SET  option_name = REPLACE( option_name ,'wp_','wp08_' ) WHERE option_name = 'wp_user_roles' ;

ที่มา: http://wordpress.org/support/topic/admin-problems-after-moving-wordpress