經過這段時間的運行,發現會出現樓層消失問題。經和 Comsenz 公司技術人員探討,知曉了原因,因此建議暫時不要對 form_postposition、common_member_grouppm、forum_post 做更改 PRIMARAY KEY 的操作,也就是說建議使用如下腳本:
#!/bin/bash
#dx2_myisam2innodb.sh
USER="root"
PASS="chang.me.please"
FILE_SQL="sql.myisam2innodb"
NAME_DB="discuzX2"
cat > "${FILE_SQL}" << EOF
USE ${NAME_DB};
EOF
mysql -u"${USER}" -p"${PASS}" -ANe "SELECT CONCAT('ALTER TABLE ', table_name, ' ENGINE=InnoDB;') as ToSQL from information_schema.tables where TABLE_SCHEMA='${NAME_DB}' and ENGINE='MYISAM' and table_name NOT in ('pre_forum_postposition', 'pre_common_member_grouppm', 'pre_forum_post') order by TABLE_ROWS;" >> "${FILE_SQL}"
mysql -u"${USER}" -p"${PASS}" < "${FILE_SQL}"
#dx2_myisam2innodb.sh
USER="root"
PASS="chang.me.please"
FILE_SQL="sql.myisam2innodb"
NAME_DB="discuzX2"
cat > "${FILE_SQL}" << EOF
USE ${NAME_DB};
EOF
mysql -u"${USER}" -p"${PASS}" -ANe "SELECT CONCAT('ALTER TABLE ', table_name, ' ENGINE=InnoDB;') as ToSQL from information_schema.tables where TABLE_SCHEMA='${NAME_DB}' and ENGINE='MYISAM' and table_name NOT in ('pre_forum_postposition', 'pre_common_member_grouppm', 'pre_forum_post') order by TABLE_ROWS;" >> "${FILE_SQL}"
mysql -u"${USER}" -p"${PASS}" < "${FILE_SQL}"
以下鏈接由康盛公司技術人員提供,謝謝他們的大力支持: