MySQLデータベースでサポートされているストレージエンジンの比較

MySQLデータベースでサポートされているストレージエンジンの比較

ストレージエンジン

MySQL は、ストレージ エンジンと呼ばれるさまざまな手法を使用して、データをファイル (メモリ) に保存できます。
各ストレージ エンジンは、異なるストレージ メカニズム、インデックス作成手法、およびロック レベルを使用し、最終的にはさまざまな機能を提供します。

MySQL でサポートされているストレージ エンジン

マイISAM

翻訳

メモリ

CSVファイル

アーカイブ

同時実行制御

複数の接続でレコードが変更される場合でも、データの一貫性と整合性を確保します。

ロック

1. 共有ロック(読み取りロック):複数のユーザーが同じ期間に同じリソースを読み取ることができ、読み取りプロセス中にデータは変更されません。
2. 排他ロック (書き込みロック): 一度に 1 人のユーザーだけがリソースに書き込むことができます。書き込みロックを実行すると、他の読み取りロックまたは書き込みロック操作はブロックされます。

パーティクルをロックする

1. テーブル ロックは、オーバーヘッドが最も低いロック戦略です。
2. 行ロックは最もコストのかかるロック戦略です。

取引

トランザクションはデータベースの整合性を保証するために使用されます

ここに画像の説明を挿入

実装手順:
(1)当座預金口座から200元を減算する(口座残高が200元以上)。
(2)相手方の口座に200元を入金する。

外部キー

データの一貫性を確保するための戦略です。

索引

データテーブル内の 1 つ以上の列の値を並べ替えるための構造です。

各種ストレージエンジンの機能

メモリ: データはメモリに保存され、保存制限はメモリ サイズによって制限されます。
MyISAM: トランザクションがあまり多くない状況に適しています。
InnoDB: トランザクションが多く、外部キーのサポートが必要な状況に適しています。
インデックス: 通常のインデックス、一意のインデックス、フルテキスト インデックス、Btree インデックス、ハッシュ インデックス。

ここに画像の説明を挿入

MyISAM: ストレージ制限は 256 TB に達し、インデックス作成、テーブル レベルのロック、データ圧縮をサポートします。
InnoDB: ストレージ制限は 64 TB で、トランザクションとインデックスをサポートし、ロックの粒度は行ロックです。

ここに画像の説明を挿入

上記は、MySQL データベースでサポートされているストレージ エンジンの詳細な比較です。MySQL ストレージ エンジンの詳細については、123WORDPRESS.COM の他の関連記事をご覧ください。

以下もご興味があるかもしれません:
  • MySQL テーブルタイプ ストレージエンジンの選択
  • MySQL データ分析ストレージエンジンの例の説明
  • MySQL のストレージ エンジンの違いと比較
  • 一般的なMySQLストレージエンジンの長所と短所
  • MySQLストレージエンジンについて学びましょう

<<:  レスポンシブWebデザイン学習(2) — 動画をレスポンシブにすることはできるのか?

>>:  CSS3でよく使われるスタイルの詳しい解説[基本的なテキストとフォントのスタイル]

推薦する

CentOS/RHEL システムで VLAN タグ付きイーサネット カードを使用する方法

シナリオによっては、Linux サーバー (CentOS/RHEL) の同じイーサネット カード (...

Ubuntu 16.4 で完全に分散された Hadoop 環境を構築するための実践的なチュートリアル

序文この記事は主にubantu 16.4 Hadoop完全分散構築に関する関連コンテンツを紹介し、皆...

ウェブページに埋め込まれた Flash と IE、FF、Maxthon の互換性の問題

いろいろ苦労した後、インターネットで検索したり、以前の会社のプロジェクトを探したり、他の人のプロジェ...

ページングクリックコントロールを実装するネイティブJS

これは、ネイティブJSを使用してページングクリックコントロールを実装する必要がある面接の質問です。参...

TypeScript名前空間の説明

目次1. 定義と使用1.1 定義1.2 使用2. 複数のファイルに分割する3. エイリアス序文: T...

MySQL5.7.03 上位バージョンから MySQL 5.7.17 への置き換えインストール プロセスと見つかった問題の解決策

1. インストール方法は? 1. [実行] -> [cmd] と入力して、小さな黒いウィンドウ...

Linux がますます人気になっている 10 の理由

Linux はますます多くのユーザーに愛されてきました。なぜ Linux はこれほど急速に発展し、い...

Vueドロップダウンメニューのコンポーネント開発の詳細説明

この記事の例では、Vueドロップダウンメニューのコンポーネント開発の具体的なコードを参考までに共有し...

Mysql で自動増分主キー ID を更新するときに問題が発生しました

目次自動インクリメント ID を更新する理由は何ですか?質問解決方法これは私が知っている問題ですが、...

MySQL ファジークエリステートメントコレクション

SQL ファジークエリステートメント一般的なファジーステートメントの構文は次のとおりです。 SELE...

JavaScript を使用してカルーセル効果を実装する

この記事では、カルーセルマップの特殊効果を実現するためのJavaScriptの具体的なコードを参考ま...

JavaScript 組み込みの日付と時刻の書式設定のサンプル コード

1. 基礎知識(日付オブジェクトのメソッド) 😜 getFullYear() は年を表す4桁の数字を...

MySQL トリガー: 複数のトリガー操作の作成例の分析

この記事では、例を使用して、MySQL で複数のトリガー操作を作成する方法について説明します。ご参考...

MySQL主キー命名戦略関連

最近、データライフサイクル管理の詳細を整理していたときに、小さな問題を発見しました。それは、MySQ...

HTML ページで JSON データを表示およびフォーマットする方法

JSONデータはHTMLページ上に表示されフォーマットされます1. 表示効果図説明:すべてのキー値は...