[解決済み] MyISAMとInnoDBを使い分けるタイミングは?重複
2022-06-17 22:52:44
質問
MyISAMは、データベースが更新されるよりもクエリされる方がはるかに多いという考えで設計されており、その結果、非常に高速な読み取り操作を実行します。もし、読み込みと書き込み(挿入|更新)の比率が15%以下であれば、MyISAMを使用する方がよいでしょう。
InnoDBは行レベルロックを使用し、コミット、ロールバック、クラッシュリカバリ機能を持ち、ユーザデータを保護します。トランザクションとフォールトトレランスをサポートします。
上記の違いは、MyISAMとInnobDBの間で正しいですか? 他の制限は、MYISAMとInnobDBのためにそこにある場合は、ガイドしてください。 ありがとうございました。
どのように解決するには?
について読む ストレージエンジン .
MyISAMです。
この MyISAM ストレージエンジンは、MySQL の
- 設計や作成が簡単なので、初心者に適している。テーブル間の外部リレーションシップの心配がない。
- 構造が単純なため、全体としてInnoDBより高速であり、サーバーリソースのコストがはるかに少ない。-- もはやほとんど真実ではない。
- フルテキストインデックス。 -- InnoDB は現在それを備えている。
- 特に読み取り集約的な(select)テーブルに良い。-- ほとんどがそうでなくなった。
- ディスクフットプリントは InnoDB の 2x-3x より小さい。 -- バージョン 5.7 では、おそらくこれが MyISAM の唯一の本当の利点です。
InnoDBです。
は InnoDB ストレージエンジンは、MySQL の中にあります。
- トランザクションのサポート (以下のようなサポートを与える ACID プロパティをサポートします)。
- 行レベルのロック。よりきめ細かいロック機構を持つことで、例えば MyISAM .
- 外部キー制約。データベースの状態、およびテーブル間の関係の整合性を確保させることを可能にします。
- InnoDBは、MyISAMよりもテーブルの破損に強い。
- データとインデックスの両方に大きなバッファプールをサポート。MyISAMのキーバッファはインデックスのみです。
- MyISAMは停滞している。将来の拡張はすべてInnoDBになる。 これは、バージョン 8.0 のロールアウトではっきりと明らかになった。
MyISAM の制限事項。
- 外部キーとカスケード削除/更新ができない
- トランザクションの完全性 (ACID 準拠) がない
- ロールバック機能なし
- 4,284,867,296 行の制限 (2^32) -- これは古いです。 デフォルト . 設定可能な上限は (多くのバージョンで) 2**56 バイトでした。
- 1テーブルあたり最大64インデックス
InnoDB の制限事項。
- フルテキストインデックスなし(5.6以下のmysqlバージョン)
-
高速に圧縮できない、読み取り専用(5.5.14導入済み
ROW_FORMAT=COMPRESSED
) - InnoDB テーブルを修復することはできません。
簡単に理解するために、以下のリンクを読んでください。
関連
-
MySQL Innodb インデックスメカニズム詳細解説
-
MySql認証ベースのvsftpd仮想ユーザー
-
MysqlからElasticsearchにデータを同期させる方法を説明します。
-
[解決済み] SQLエラー。ORA-01861:リテラルは、フォーマット文字列01861に一致しません。
-
群関数解の無効な使用
-
PostMan レポート エラー: 接続 ECONNREFUSED 127.0.0.1:port number
-
[解決済み] ユーザー 'root'@'localhost' (パスワード: YES を使用) のアクセス拒否 - 特権がない?
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] utf8_general_ciとutf8_unicode_ciの違いは何ですか?
-
[解決済み】「INNER JOIN」と「OUTER JOIN」の違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ジョイントインデックスのためのmysqlの条件とインデックスが失敗するための条件
-
MySQLインストールチュートリアル(Windows用)詳細
-
MySQLインストールチュートリアル(Linux版
-
[解決済み】マルチパート識別子をバインドできませんでした。
-
MySQLの一般的な分割ライブラリおよび分割テーブルスキームの概要
-
Djangoマイグレーションエラー 外部キー制約を追加できない
-
Mysqlの使用中に発生したエラーの一部
-
[解決済み] MySQLでコマンドラインを使用してユーザーアカウントのリストを取得するにはどうすればよいですか?
-
[解決済み] MySQLで複数のカラムに一意制約を指定するには?
-
[解決済み】MyISAMとInnoDBの違いは何ですか?[重複あり]