ホームページ > データベース > mysql チュートリアル > MyISAM テーブルを InnoDB に効率的に変換するにはどうすればよいですか?

MyISAM テーブルを InnoDB に効率的に変換するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-01-04 10:11:34
オリジナル
986 人が閲覧しました

How to Efficiently Convert MyISAM Tables to InnoDB?

MyISAM テーブルの InnoDB への効率的な変換

MyISAM は過去に広く使用されていましたが、機能とパフォーマンスの点で InnoDB に遅れをとっています。このため、MyISAM テーブルを InnoDB に変換することが望ましい場合があります。各テーブルを個別に手動で変更することもできますが、一括変換にはより効率的なアプローチが存在します。

MyISAM テーブルを識別するクエリ

データベース内のすべての MyISAM テーブルを識別することから始めます。 。次の SQL ステートメントを実行します。

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;
ログイン後にコピー

テーブルを InnoDB に変換する

変換する必要があるテーブルのリストを取得したら、SQL からの出力をコピーします。クエリを作成し、新しい SQL ステートメントに貼り付けます。この新しいステートメントを実行して変換を実行します:

<Copy-pasted SQL query>
ログイン後にコピー

これにより、データベース内のすべての MyISAM テーブルが効率的に InnoDB に変換されます。すでに InnoDB であるテーブルは、この変換プロセスの影響を受けないことに注意してください。

以上がMyISAM テーブルを InnoDB に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート