sql >> データベース >  >> RDS >> Mysql

MySql:MyISAMとInno DB!

    主な違いは、InnoDBはトランザクションをサポートしますが、MyISAMはサポートしないことです。

    他にも多くの違いがありますが、私が知っている一般的な違いは次のとおりです。

    • MyISAMは通常、検索が高速であると考えられてきましたが、最近のInnoDBの改善により、この違いがなくなり、同時実行性の高いワークロードのパフォーマンスが向上しています。
    • InnoDBはトランザクションをサポートしますが、MyISAMはサポートしません
    • InnoDBは参照整合性をサポートしていますが、MyISAMはサポートしていません
    • InnoDBはインデックスの処理方法が少し異なり、主キーをすべてのインデックスの一部として格納します(インデックスがディスク上でより多くのスペースを占めるようにするだけでなく、カバーするインデックスの可能性も高くなります)
    • MyISAMはテーブルレベルのロックを実行し、InnoDBは行レベルのロックを実行できます
    • MySQL構成ファイルではさまざまなメモリ/バッファ/インデックス設定が使用されます
    • InnoDBは通常、クラッシュリカバリが優れていると言われています
    • 別の回答で述べたように、データは異なる方法でディスクに保存されます。 InnoDBはこの領域で構成可能であり、必要に応じてテーブルごとに1つのファイルなどを持つことができると思います

    グーグル検索またはMySQLサイトは、他の多くの違いをより詳細にもたらすと確信しています。



    1. SQLAlchemyを使用したPostgreSQLILIKEクエリ

    2. Python FlaskとMySQLを使用してゼロからWebアプリを作成する:パート3

    3. 「S-Q-L」または「続編」と発音されますか?

    4. UTF8テーブルのlatin1文字をUTF8に変換します