回答:
MySQLを使用してスクリプトを作成し、実行できます。
dbname
MyISAMに変換されますCONVERT_SCRIPT=Convert_dbname_InnoDB_to_MyISAM.sql
mysql -u... -p... -AN -e"SELECT CONCAT('ALTER TABLE ',table_schema,'.',table_name,' ENGINE=MyISAM;') FROM information_schema.tables WHERE table_schema='dbname' AND engine='InnoDB';" > ${CONVERT_SCRIPT}
mysql -u... -p... -A < ${CONVERT_SCRIPT}
CONVERT_SCRIPT=Convert_InnoDB_to_MyISAM.sql
mysql -u... -p... -AN -e"SELECT CONCAT('ALTER TABLE ',table_schema,'.',table_name,' ENGINE=MyISAM;') FROM information_schema.tables WHERE engine ='InnoDB';" > ${CONVERT_SCRIPT}
mysql -u... -p... -A < ${CONVERT_SCRIPT}
テーブルの変換をスレーブに複製したくない場合はSET SQL_LOG_BIN=0;
、最初の行として入力してください。この方法では、最初にスレーブのみを変換し、その後マスターを変換することにより、マスター/スレーブ設定で変換をテストできます。
dbname
MyISAMに変換され、他のサーバーには複製されませんCONVERT_SCRIPT=Convert_dbname_InnoDB_to_MyISAM.sql
echo "SET SQL_LOG_BIN=0;" > ${CONVERT_SCRIPT}
mysql -u... -p... -AN -e"SELECT CONCAT('ALTER TABLE ',table_schema,'.',table_name,' ENGINE=MyISAM;') FROM information_schema.tables WHERE table_schema='dbname' AND engine='InnoDB';" >> ${CONVERT_SCRIPT}
mysql -u... -p... -A < ${CONVERT_SCRIPT}
CONVERT_SCRIPT=Convert_InnoDB_to_MyISAM.sql
echo "SET SQL_LOG_BIN=0;" > ${CONVERT_SCRIPT}
mysql -u... -p... -AN -e"SELECT CONCAT('ALTER TABLE ',table_schema,'.',table_name,' ENGINE=MyISAM;') FROM information_schema.tables WHERE engine ='InnoDB';" >> ${CONVERT_SCRIPT}
mysql -u... -p... -A < ${CONVERT_SCRIPT}
試してみる !!!
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
どこかのMySQL 5.7以降NO_ZERO_DATEバイパスへ-ソースstackoverflow.com/questions/9192027/...
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
どこかのMySQL 5.7以降NO_ZERO_DATEバイパスへ-ソースstackoverflow.com/questions/9192027/...
まだこの問題を抱えている人のために、あなたはそれを行うためにこの方法に従うことができます、私はウェブサイトでこの答えを見つけました。それは私を大いに助けます:
shell> mysql -u username -p -e "SELECT concat('ALTER TABLE ', TABLE_NAME,' ENGINE=MYISAM;') FROM Information_schema.TABLES WHERE TABLE_SCHEMA = 'db_name' AND ENGINE = 'InnoDB' AND TABLE_TYPE = 'BASE TABLE'" | tail -n+2 >> alter.sql
アップデート username
やdb_name
独自の値を持つ値。
スクリプトを実行すると、名前でファイルが保存さalter.sql
れます。ファイルを開き、コマンドラインphpmyadmin
またはmysql
コマンドラインでコンテンツを実行します。
乾杯!