すべての MyISAM テーブルを InnoDB に効率的に変換する方法
多くの MySQL ユーザーは、MyISAM テーブルを InnoDB に変換する必要性に遭遇します。この目的には個別の「ALTER TABLE」コマンドを使用できますが、大規模なデータベースの場合、このプロセスは退屈になる可能性があります。この記事では、MyISAM テーブルを InnoDB に一括変換するためのより効率的なソリューションを提供します。
現在のデータベース内のすべての MyISAM テーブルのリストを取得するには:
SET @DATABASE_NAME = 'name_of_your_db'; SELECT CONCAT('ALTER TABLE \`', table_name, '\` ENGINE=InnoDB;') AS sql_statements FROM information_schema.tables AS tb WHERE table_schema = @DATABASE_NAME AND `ENGINE` = 'MyISAM' AND `TABLE_TYPE` = 'BASE TABLE' ORDER BY table_name DESC;
このクエリはシリーズを生成します各 MyISAM テーブルの 'ALTER TABLE' ステートメント。出力をコピーしたら、新しい SQL クエリとして実行して一括変換を実行できます。
これらの手順に従うことで、ユーザーはデータベース内のすべての MyISAM テーブルを迅速かつ効率的に InnoDB に変換でき、パフォーマンスが向上します。データ ストレージの耐久性も向上します。
以上がすべての MyISAM テーブルを MySQL の InnoDB に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。