(PHPの148ではなく)単一のコマンドで実行できます:
mysql --database=dbname -B -N -e "SHOW TABLES" \
| awk '{print "SET foreign_key_checks = 0; ALTER TABLE", $1, "CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; SET foreign_key_checks = 1; "}' \
| mysql --database=dbname &
コマンドラインを愛する必要があります...(--user
を使用する必要があるかもしれません および--password
mysql
のオプション 。
編集:外部キーの問題を回避するために、SET foreign_key_checks = 0;
を追加しました およびSET foreign_key_checks = 1;