How to fix error Table upgrade required. Please do "REPAIR TABLE" (2045019)
ถ้าหากคุณได้ทำการ upgrade Zimbra Collaboration Server (ZCS) ไปยัง version 7 แล้วพบ error ตามด้านล่าง
Table upgrade required. Please do "REPAIR TABLE" (2045019)
ซึ่งมาจากคำสั่ง mysqlcheck ดังตัวอย่าง
Database errors found.
/opt/zimbra/mysql/bin/mysqlcheck --defaults-file=/opt/zimbra/conf/my.cnf
-S /opt/zimbra/db/mysql.sock -A -C -s -u root --password=XXXXXXXX
mboxgroup1.appointment
error : Table upgrade required. Please do "REPAIR TABLE `appointment`" or dump/reload to fix it!
mboxgroup1.data_source_item
error : Table upgrade required. Please do "REPAIR TABLE `data_source_item`" or dump/reload to fix it!
mboxgroup1.imap_folder
error : Table upgrade required. Please do "REPAIR TABLE `imap_folder`" or dump/reload to fix it!
สาเหตุเกิดจาก MySQL ของ Zimbra version ที่ได้ upgrade ไปมี version ที่ใหม่กว่า ดังนั้นจำเป็นต้องทำการ run migrate script ซึ่งสามารถทำต่มขั้นตอนได้ดังนี้
- Stop Zimbra ด้วยคำสั่ง
zmcontrol stop - Restart MySQL ด้วยคำสั่ง
mysql.server stopmysql.server start - จากนั้นใช้ root user รันคำสั่งด้านล่าง
/opt/zimbra/libexec/scripts/migrate20100913-Mysql51.pl - ใช้ zimbra user ทำการ stop MySQL server ด้วยคำสั่ง
mysql.server stop - Start Zimbra server ด้วยคำสั่ง
zmcontrol start
Impact/Risks การแก้ไขปัญหานี้จะทำให้ Donwtime ครับ