問題タブ [myisam]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
25 に答える
301582 参照

mysql - MyISAM 対 InnoDB

私は、多くのデータベース書き込みを伴うプロジェクトに取り組んでいます ( 70% の挿入と 30% の読み取り)。この比率には、1 回の読み取りと 1 回の書き込みと見なされる更新も含まれます。読み取りはダーティになる可能性があります (たとえば、読み取り時に 100% 正確な情報は必要ありません)。
問題のタスクは、1 時間に 100 万を超えるデータベース トランザクションを実行することになります。

MyISAM と InnoDB の違いについて Web でたくさん読んだことがありますが、このタスクに使用する特定のデータベース/テーブルには MyISAM が当然の選択のようです。私が読んでいるように見えることから、行レベルのロックがサポートされているため、トランザクションが必要な場合は InnoDB が適しています。

このタイプの負荷 (またはそれ以上) の経験がある人はいますか? MyISAM は進むべき道ですか?

0 投票する
8 に答える
3421 参照

mysql - MyISAM テーブルをより安全に使用するにはどうすればよいですか?

InnoDB の安全性、一貫性、セルフチェック機能が気に入っています。

しかし、MyISAM の速度と軽量さが必要です。

クラッシュや不良データなどによる MyISAM の破損を防ぐにはどうすればよいですか? チェック (CHECK TABLE または myisamchk のいずれか) を通過するのに永遠に時間がかかります。

私はトランザクションのセキュリティを求めているわけではありません。それが InnoDB の目的です。しかし、数時間 (または数日!) 後ではなく、すぐに再起動できるデータベースが必要です。

更新:テーブルにデータをより速くロードする方法を尋ねているのではありません。私はすでにそれに対して頭を悩ませており、LOAD DATA に MyISAM テーブルを使用する方がはるかに高速であると判断しました。私が今求めているのは、MyISAM テーブルを使用するリスクを軽減することです。つまり、損傷の可能性を減らし、回復速度を上げます。

0 投票する
2 に答える
1389 参照

mysql - その内容の長さに基づいてMySQL列にインデックスを作成しますか?

MySQL v 5.0 (myisam db エンジン) の列に、7000 文字までの TEXT データ型の値の長さに基づいてインデックスを作成するにはどうすればよいですか? 最初の列の長さで別の列を追加する必要がありますか?

0 投票する
14 に答える
369737 参照

mysql - 特定のテーブルの MySQL エンジンの種類を確認するにはどうすればよいですか?

私の MySQL データベースには、異なるストレージ エンジン (具体的には myisam と innodb) を使用するいくつかのテーブルが含まれています。どのテーブルがどのエンジンを使用しているかを調べるにはどうすればよいですか?

0 投票する
6 に答える
1229 参照

mysql - MyISAMからInnoDBに変更するときに知っておく必要のある落とし穴/事柄はありますか?

私のプロジェクトの1つはMySQLのMyISAMエンジンを使用していますが、あちこちでトランザクションサポートが必要なため、InnoDBに変更することを検討しています。

  • これを行う前に、何を確認または検討する必要がありますか?
  • エンジンを変更するだけでいいですか、それともデータを準備する必要がありますか?
0 投票する
3 に答える
10287 参照

mysql - mysql レプリケーション - テーブルのロック?

私は現在、mysql/php を実行している Web サイトを持つ会社で働いています (すべてのテーブルも MYISAM テーブル タイプを使用しています)。

レプリケーションを実装したいのですが、バイナリログへの書き込みを行うときにテーブルがロックされることをmysqlのドキュメントやインターネット上の他の場所で読みました(スレーブデータベースは最終的にそこから読み取ります)。

これらのロックは、かなり書き込みが多いライブ サイトで問題を引き起こしますか? また、テーブルをロックせずにレプリケーションを有効にする方法はありますか?

0 投票する
1 に答える
6406 参照

mysql - MySQL MyISAM & innoDB メモリ使用量

MyISAM と innoDB が使用するメモリの量を知っている人はいますか? 小さなテーブルを処理する場合と大きなテーブル (最大 32 GB) を処理する場合のメモリ使用量を比較してください。

innoDB が MyISAM よりも重いことは知っていますが、どれだけ重いのでしょうか?

どんな助けでも大歓迎です。

ありがとう、jb

0 投票する
12 に答える
18110 参照

mysql - MySql: MyISAM 対 Inno DB!

MySqlのMyISAMとInno DBタイプの違いは何ですか?

0 投票する
14 に答える
118044 参照

mysql - INT と VARCHAR 主キーの間に REAL パフォーマンスの違いはありますか?

MySQL で主キーとして INT と VARCHAR を使用する場合、測定可能なパフォーマンスの違いはありますか? 参照リスト (米国の州、国コードなど) の主キーとして VARCHAR を使用したいのですが、同僚はすべてのテーブルの主キーとして INT AUTO_INCREMENT を使いません。

hereで詳しく説明されているように、私の主張は、INT と VARCHAR のパフォーマンスの違いはごくわずかであるということです。すべての INT 外部キー参照では、参照を理解するために JOIN が必要になるため、VARCHAR キーは情報を直接提示します。

では、この特定のユースケースとそれに関連するパフォーマンスの問題を経験した人はいますか?

0 投票する
4 に答える
1406 参照

mysql - 混合テーブルでの MySQL トランザクションのサポート

MySQL とのトランザクションが必要になるようですが、InnoDB/MyISAM テーブルが混在する Mysql でトランザクションを管理する方法がわかりません。すべてが非常に混乱しているようです。

なぜテーブルを混ぜ合わせたいのかと思うかもしれません...答えはパフォーマンスです。多くの開発者が気付いているように、InnoDB テーブルは一般的にパフォーマンスが悪いですが、代わりに高い分離レベルなどを提供します...

この問題に関するアドバイスはありますか?