MySQLでよく使われる4つのストレージエンジンについて簡単に説明します。

MySQLでよく使われる4つのストレージエンジンについて簡単に説明します。

よく使われる4つのMySQLエンジンの紹介

(1):MyISAMストレージエンジン:

トランザクションや外部キーはサポートされていません。その利点は、アクセス速度が速いことです。トランザクションの整合性を必要としないアプリケーションや、選択と挿入が主なアプリケーションでは、基本的にこのエンジンを使用してテーブルを作成できます。

3つの異なるストレージ形式をサポート: 静的テーブル、動的テーブル、圧縮テーブル

静的テーブル: テーブル内のフィールドはすべて非可変長フィールドであるため、各レコードの長さは固定です。利点は、保存が非常に高速で、キャッシュが容易で、障害が発生した場合に簡単に回復できることです。欠点は、通常、動的テーブルよりも多くのスペースを占有することです (保存中に列幅の定義に従ってスペースが埋められるため)。PS: データを取得すると、フィールドの後のスペースはデフォルトで削除されます。注意しないと、データ自体のスペースも無視されます。

動的テーブル: レコードの長さは固定されていません。このストレージの利点は、比較的少ないスペースしか占有しないことです。欠点: データの頻繁な更新と削除により、簡単に断片化が発生する可能性があります。パフォーマンスを向上させるには、OPTIMIZE TABLE または myisamchk -r コマンドを定期的に実行する必要があります。

圧縮テーブル: 各レコードは個別に圧縮されるため、アクセスのオーバーヘッドはほとんどありません。

(2)InnoDBストレージエンジン*

ストレージ エンジンは、コミット、ロールバック、クラッシュ回復機能によりトランザクションの安全性を提供します。ただし、MyISAM エンジンと比較すると、書き込み処理の効率は低く、データとインデックスを保持するためにより多くのディスク領域が必要になります。
InnoDB ストレージ エンジンの機能: 自動拡張列と外部キー制約のサポート

(3)メモリストレージエンジン

メモリ ストレージ エンジンは、メモリ内に存在するコンテンツを使用してテーブルを作成します。各メモリ テーブルは実際には 1 つのディスク ファイルにのみ対応し、形式は .frm です。メモリ タイプのテーブルは、データがメモリに保存され、デフォルトで HASH インデックスを使用するため、アクセスが非常に高速ですが、サービスがシャットダウンされると、テーブル内のデータは失われます。
MEMORY ストレージ エンジンを持つテーブルでは、BTREE インデックスまたは HASH インデックスの使用を選択できます。2 つの異なるタイプのインデックスには、異なる使用範囲があります。

ハッシュインデックスの利点:
ハッシュ インデックスの特殊な構造により、検索効率が非常に高くなります。ルート ノードからブランチ ノード、そして最終的にページ ノードまで複数の IO アクセスを必要とする B ツリー インデックスとは異なり、インデックス検索は 1 回で済みます。そのため、ハッシュ インデックスのクエリ効率は B ツリー インデックスよりもはるかに高くなります。
ハッシュ インデックスの欠点: 不正確な検索はどうでしょうか? これも明らかです。ハッシュ アルゴリズムは等しい値の計算に基づいているため、ハッシュ インデックスは無効であり、「like」などの範囲検索をサポートしていません。

メモリ型ストレージ エンジンは、主に内容が頻繁に変更されないコード テーブルや、統計演算の中間結果テーブルとして使用され、中間結果を効率的に分析して最終的な統計結果を取得します。ストレージ エンジンがメモリであるテーブルを更新する場合は、データが実際にはディスクに書き込まれないため、サービスの次回の再起動後に変更されたデータを取得する方法を考慮する必要があるため注意が必要です。

(4)MERGEストレージエンジン

Merge ストレージ エンジンは、MyISAM テーブルのグループの組み合わせです。これらの MyISAM テーブルは、まったく同じ構造を持つ必要があります。マージ テーブル自体にはデータは含まれません。マージ タイプのテーブルは、クエリ、更新、および削除できます。これらの操作は、実際には内部の MyISAM テーブルで実行されます。

上記は、編集者が紹介したMySQLでよく使用される4つのストレージエンジンの詳細な説明と統合です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • MySQL ストレージ エンジン MyISAM と InnoDB の違いの概要
  • MySQLのストレージエンジンの詳細な説明
  • MySQL共通ストレージエンジンの機能と使用方法の詳細な説明
  • MySQL データ分析ストレージエンジンの例の説明

<<:  Linux デバイスに空き容量がありません inode の満杯により 500 エラーが発生します

>>:  Nginx 500 内部サーバーエラーの解決方法

推薦する

MySQLでデータベースデータ保存ディレクトリを変更する方法

序文MySQL データベースのデフォルトのデータベース ファイルは /var/lib/mysql に...

ポップアップウィンドウの上下中央左右と透明な背景のロックウィンドウ効果を実現する CSS

クリック後にポップアップボックスを実現し、上下左右に中央揃えし、灰色の透明マスクを追加してウィンドウ...

VUE のコンパイル スコープとスロット スコープのスロットの問題について

スロットとは何ですか?スロット ディレクティブは v-slot であり、現在 slot と slot...

CSS3の3D効果を使って立方体を作成する

CSS3 の 3D 効果を使用して立方体を作成する方法を学ぶと、3D シーンの回転と変位のプロパティ...

純粋なHTML+CSSでタイピング効果を実現

この記事は主に、一定の参考値を持つ純粋な HTML + CSS によって実現されるタイピング効果を紹...

MySQL 構成 SSL マスタースレーブ レプリケーション

MySQL5.6 SSLファイルの作成方法公式ドキュメント: https://dev.mysql.c...

Mysql InnoDBとMyISAMの違いの分析

MySQL は、myisam、innodb、memory、archive、example など、多く...

Linux Centos でスクリプトを使用して Docker をインストールする方法

Dockerの主な機能は何ですか?現在、Docker には少なくとも次のアプリケーション シナリオが...

ウェブデザイナーが持つべき7つのスキル

Web デザインは科学であると同時に芸術でもあります。 Web デザイン作業は、半分は適切なプログラ...

MySQL 8.0.22 zip圧縮パッケージ版(無料インストール)のダウンロード、インストール、および構成手順の詳細

目次最初のステップはMySQLをダウンロードすることですステップ2: ダウンロードした圧縮パッケージ...

Windows 上で Zookeeper サーバーを構築するチュートリアル

インストールと設定Apacheの公式ウェブサイトには多くのミラーダウンロードアドレスが用意されており...

3つの簡単な調整でMySQLを最適化する

私は熟練した DBA になるつもりはありませんが、MySQL を最適化するときは、いくつかの構成を調...

CentOS のデフォルトの SSH ポート番号を変更する方法の例

LinuxサーバーのデフォルトのSSHポート番号は通常22なので、ほとんどのユーザーはセキュリティ上...

MySQL の選択、挿入、更新バッチ操作ステートメントのコード例

プロジェクトでは、データを操作するためにバッチ操作ステートメントが必要になることがよくあります。バッ...

MySQLカーソルの詳細な紹介

目次1. カーソルとは何ですか? 2. カーソルの使い方1. カーソルを宣言する2.カーソルを開く3...