ホームページ  >  記事  >  データベース  >  MySQL ストレージ エンジンとは何ですか? (詳しい説明)

MySQL ストレージ エンジンとは何ですか? (詳しい説明)

藏色散人
藏色散人オリジナル
2018-09-10 17:00:121970ブラウズ

この記事では主にMySQLストレージエンジンとは何かについて紹介します。 MySQL ビデオ チュートリアル または MySQL マニュアル を参照して学習することもできます。

MySQL にはさまざまなストレージ エンジンがあり、それぞれに独自の長所と短所があります: MyISAM、InnoDB、MERGE、MEMORY (HEAP)、BDB (BerkeleyDB)、EXAMPLE、FEDERATED、ARCHIVE から最適なものを選択できます。 、CSV、ブラックホール。

MySQL は、さまざまなテーブル タイプのプロセッサとして複数のストレージ エンジンをサポートしています。 MySQL ストレージ エンジンには、トランザクション セーフなテーブルを処理するエンジンと、トランザクション セーフでないテーブルを処理するエンジンが含まれています。

MyISAM は、非トランザクション テーブルを管理します。高速な保存と取得、および全文検索機能を提供します。 MyISAM はすべての MySQL 構成でサポートされており、デフォルトで別のエンジンを使用するように MySQL を構成しない限り、デフォルトのストレージ エンジンになります。

MEMORYストレージエンジンは「メモリ内」テーブルを提供します。 MERGE ストレージ エンジンを使用すると、同じ MyISAM テーブル上でコレクションを 1 つのテーブルとして処理できます。 MyISAM と同様に、MEMORY および MERGE ストレージ エンジンは非トランザクション テーブルを処理し、両方のエンジンがデフォルトで MySQL に含まれています。

注: MEMORY ストレージ エンジンは、正式には HEAP エンジンとして識別されます。

InnoDB と BDB ストレージ エンジンは、トランザクションセーフなテーブルを提供します。 BDB は、それをサポートするオペレーティング システム用にリリースされた MySQL-Max バイナリ ディストリビューションに含まれています。 InnoDB は、すべての MySQL 5.1 バイナリ ディストリビューションにもデフォルトで含まれており、好みに応じてどちらかのエンジンを許可または無効にするように MySQL を構成できます。
EXAMPLE ストレージ エンジンは「スタブ」エンジンであり、何も行いません。このエンジンを使用してテーブルを作成できますが、テーブルにデータが保存されたり、テーブルから取得されたりすることはありません。このエンジンの目的は、新しいストレージ エンジンの作成を開始する方法を示す MySQL ソース コードの例として機能することです。繰り返しますが、その主な関心は開発者にあります。

NDB Cluster は、複数のコンピューターに分割されたテーブルを実装するために MySQL Cluster によって使用されるストレージ エンジンです。これは、MySQL-Max 5.1 バイナリ ディストリビューションで提供されます。このストレージ エンジンは現在、Linux、Solaris、および Mac OS X でのみサポートされています。将来の MySQL ディストリビューションでは、Windows を含む他のプラットフォームでもこのエンジンのサポートを追加したいと考えています。

ARCHIVE ストレージ エンジンは、インデックスを作成せずに、大量の保存データを非常に軽くカバーするために使用されます。

CSVストレージエンジンは、データをカンマ区切り形式のテキストファイルに保存します。

BLACKHOLE ストレージ エンジンはデータを受け取りますが、保存はせず、取得では常に空のセットが返されます。

FEDERATED ストレージ エンジンはデータをリモート データベースに保存します。 MySQL 5.1 では、MySQL C クライアント API を使用して MySQL でのみ動作します。将来のディストリビューションでは、他のドライバーまたはクライアント接続方法を使用して追加のデータ ソースに接続できるようにしたいと考えています。

新しいテーブルを作成するとき、CREATE TABLE ステートメントに ENGINE または TYPE オプションを追加することで、作成するテーブルのタイプを MySQL に伝えることができます:

 CREATE TABLE t (i INT) ENGINE = INNODB;
    CREATE TABLE t (i INT) TYPE = MEMORY;

TYPE は MySQL 5.1 でもサポートされていますが、現在 ENGINE が好ましい用語。

この記事は MySQL ストレージ エンジンの紹介です。必要としている友人に役立つことを願っています。

以上がMySQL ストレージ エンジンとは何ですか? (詳しい説明)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。