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

1つのデータベース内のMyISAMテーブルとInnoDBテーブル

    最近、私は常にデフォルトでInnoDBを使用しています。特に、MyISAMが完全なテーブルロックに悩まされている、書き込みが集中するテーブルではそうです。これがポイントの比較です。

    MyISAMを使用する理由:

    • テーブルは、選択が重い負荷に対して非常に高速です
    • テーブルレベルのロックは、書き込みが集中するマルチユーザー環境のスケーラビリティを制限します。
    • 最小のディスクスペース消費
    • フルテキストインデックス
    • マージおよび圧縮されたテーブル。

    InnoDBを使用する理由:

    • ACIDトランザクション
    • 行レベルのロック
    • 一貫した読み取り–優れた読み取り/書き込みの同時実行性に到達できます。
    • 主キークラスタリング–場合によっては優れたパフォーマンスが得られます。
    • 外部キーのサポート。
    • インデックスページとデータページの両方をキャッシュできます。
    • 自動クラッシュリカバリ– MySQLのシャットダウンがクリーンでなかった場合でもInnoDBテーブルは–一貫した状態にリカバリします–MyISAMのようなチェック/修復は必要ありません。
    • すべての更新はInnoDBのトランザクションエンジンを通過する必要がありますが、これは多くの場合、非トランザクションストレージエンジンと比較してパフォーマンスが低下します。

    上記はこのサイト 、もう機能していないようです。




    1. MySQLクエリログを有効にする方法は?

    2. JDBCを使用して1つのトランザクションで2つの更新クエリを実行する方法

    3. PowerShellを知る必要があるため

    4. MySQLでリンクリストまたは同様のキューを作成しますか?