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

すべての MyISAM テーブルを MySQL の InnoDB に一括変換するにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-04 03:16:39
オリジナル
1015 人が閲覧しました

How Can I Bulk Convert All MyISAM Tables to InnoDB in MySQL?

MyISAM テーブルから InnoDB への一括変換: 包括的なガイド

はじめに

MyISAM から InnoDB にテーブルを 1 つずつ変更するのは面倒な場合があります。次の記事では、SQL を使用してデータベース内のすべての MyISAM テーブルを InnoDB に迅速に変換するための包括的なソリューションを提供します。

詳細なソリューション

この一括変換を実行するには、次の 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;
ログイン後にコピー

必ず name_of_your_db を実際のデータベースの名前に置き換えてください。 database.

実装

上記の SQL ステートメントを実行すると、各 MyISAM テーブルを InnoDB に変換する SQL ステートメントのリストが出力に表示されます。これらのステートメントを新しい SQL クエリ ウィンドウにコピーして実行します。これにより、データベース内のすべての MyISAM テーブルの変換が実行されます。

MyISAM に対する InnoDB の利点

InnoDB には、MyISAM に比べて次のような利点があります。

  • データの改善トランザクションと外部キー制約による整合性
  • 行レベルによる書き込みパフォーマンスの向上ロック
  • 高負荷アプリケーションのスケーラビリティと同時実行性の向上
  • 全文検索と外部キーのサポート

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

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