mysqlエンジンの変更

王林
リリース: 2023-05-18 12:52:07
オリジナル
1395 人が閲覧しました

MySQL は、効率的なパフォーマンスと使いやすさの特徴を備えた、広く使用されているリレーショナル データベース管理システムです。 MySQL はさまざまなストレージ エンジンをサポートしています。ストレージ エンジンは、データがディスクやメモリ上でどのように編成され、操作されるかを決定するコア コンポーネントです。したがって、適切なストレージ エンジンを選択することは、MySQL のパフォーマンスと使用法にとって非常に重要です。

MySQL で一般的に使用されるストレージ エンジンには、MyISAM、InnoDB、MEMORY (HEAP)、CSV、BLACKHOLE、ARCHIVE などが含まれます。さまざまなストレージ エンジンがさまざまなニーズに適しています。たとえば、MyISAM は大量のクエリを必要とするシステムに適しており、InnoDB はトランザクション処理システムに適しています。デフォルトの MySQL ストレージ エンジンは MyISAM ですが、ユーザーは独自のシステムのニーズに合わせてストレージ エンジンを変更できます。

この記事では、MySQL のストレージ エンジンを変更する方法を紹介します。

  1. 現在のテーブルのストレージ エンジンをクエリする

MySQL で、SHOW TABLE STATUS ステートメントを使用して、現在のデータベース内のすべてのテーブルの情報 (名前を含む) をクエリします。テーブルとストレージ エンジンの数、行数など。例は次のとおりです。

SHOW TABLE STATUS FROM dbname;
ログイン後にコピー

ここで、dbname はクエリ対象のデータベースの名前です。このステートメントを実行すると、MySQL はすべてのテーブル情報を含むテーブルを返します。このテーブルには、現在のテーブルで使用されるストレージ エンジンである Engine という名前の列が含まれます。

  1. 単一テーブルのストレージ エンジンを変更する

MySQL では、ALTER TABLE ステートメントを使用して単一テーブルのストレージ エンジンを変更できます。例は次のとおりです。

ALTER TABLE tablename ENGINE=InnoDB;
ログイン後にコピー

このうち、tablename はストレージ エンジンを変更するテーブルの名前、InnoDB は変更するストレージ エンジンの名前です。このステートメントを実行すると、MySQL は tablename テーブルのストレージ エンジンを InnoDB に変更します。

  1. データベース全体のストレージ エンジンを変更する

データベース全体のすべてのテーブルのストレージ エンジンを変更する必要がある場合は、USE ステートメントを使用して指定できます。 ALTER TABLE ステートメントを使用する前に必要なデータベース名が変更されました。例は次のとおりです。

USE dbname;
ALTER TABLE tablename1 ENGINE=InnoDB;
ALTER TABLE tablename2 ENGINE=InnoDB;
...
ログイン後にコピー

このうち、dbname は変更するデータベースの名前、tablename1、tablename2 などは変更するストレージ エンジンのテーブルの名前、InnoDB は変更するデータベースの名前です。変更するストレージ エンジンの名前。このステートメントを実行すると、MySQL は、InnoDB に変更する必要がある dbname データベース内のすべてのテーブルのストレージ エンジンを変更します。

  1. ストレージ エンジンの変更が成功したかどうかを確認する

ストレージ エンジンを変更した後、再度 SHOW TABLE
STATUS ステートメントを使用して、変更が成功したかどうかを確認できます。成功。変更が成功すると、「エンジン」フィールドに新しいストレージ エンジン名が表示されます。

つまり、MySQL のストレージ エンジンの変更は必要な操作であり、システム要件に応じてさまざまなストレージ エンジンを選択して、より高いパフォーマンスとより良い使用結果を実現できます。ストレージ エンジンを変更する前に、誤操作によるデータ損失を防ぐために、すべてのデータをバックアップすることをお勧めします。

以上がmysqlエンジンの変更の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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