私はインターネット上で数え切れないほどの my.cnf 構成を読みましたが、言及されている構成のほとんどは次のようなものでした。 1. innodb_buffer_pool_size 次に、シングルスレッドとマルチスレッドの 2 つの例を記述して、構成パラメータを変更することでパフォーマンスが向上するかどうかをテストしました。結果は、innodb_flush_log_at_trx_commit のみがパフォーマンスを向上できることを示しています。パラメータ 1、2、3 については、いずれか 1 つをオンにしても、3 つすべてを同時に調整しても、テストのパフォーマンスには影響しません。考えてみると、テスト データの量が十分ではなかったことが原因かもしれません。条件が許せば、より多くのデータを使用してこれら 3 つのパラメーターをテストします。 innodb_flush_log_at_trx_commit の詳細な説明は次のとおりです。 innodb_flush_log_at_trx_commit が 0 に設定されている場合、ログ バッファーは 1 秒ごとにログ ファイルに書き込まれ、同時にログ ファイルのフラッシュ (ディスクへの書き込み) 操作が実行されます。このモードでは、トランザクションがコミットされても、ディスクへの書き込み操作はアクティブにトリガーされません。 結果: 0 に設定すると、このモードは最も高速になりますが、安全性は低くなります。mysqld プロセスがクラッシュすると、最後の 1 秒間のすべてのトランザクション データが失われます。 注: プロセスのスケジュールの問題により、この「1 秒に 1 回のフラッシュ操作」は「1 秒あたり」100% であることが保証されません。 結論: innodb_flush_log_at_trx_commit を 0 または 2 に設定した場合の速度は同様であり、どちらも 1 に設定した場合よりもはるかに高速です。 これは、InnoDB エンジンと MyISAM エンジンの違いを思い出させます。InnoDB の利点は、並行処理が MyISAM よりも高速であることです。スレッド プールの数は、CPU スレッドの数に応じて設定されています。その後、スレッド プールの数を CPU スレッドの数よりも大きく、大きく、さらに大きく設定しました。その結果、テスト プログラムのパフォーマンスが再び向上しました。酔っていました。スレッド プールに対する私の理解はあまりにも浅すぎたことが判明しました。最適なスレッドプールサイズ 以下もご興味があるかもしれません:
|
>>: Linuxカーネルのアクセス制御セキュリティを強化する方法
この記事の例では、テーブルドラッグオプションを実装するためのjsの具体的なコードを参考までに共有して...
目次設定を追加json 構成レイヤー構成の表示論理層の構成位置追跡をオンにする録音を開始開始座標を決...
Docker は 2013 年のリリース以来、広く注目され、ソフトウェア業界を変える可能性を秘めてい...
nGrinderとは何ですか? nGrinder は、スクリプトの作成、テストの実行、監視、結果レポ...
データベースでcreate tableステートメントを実行する テーブル `sys_acl` を作成...
CSS 疑似要素を使用して要素を制御する場合、一部の要素のスタイルを変更する必要があることがよくあり...
Linux での MySQL データベースのマスター/スレーブ同期構成の利点は、この方法をバックアッ...
mysql コマンドを入力します: mysql -u+(ユーザー名) -p+(パスワード) mysq...
よく遭遇する問題: 下部の要素を「下部に貼り付ける」効果を CSS でどのように実現するか。この記事...
目次1. 古いMySQL5.7データをバックアップする2. MySQL8.0.13のイメージをプルし...
1. VPSとCentOSシステムを購入しましたが、サーバーの時間が北京時間と一致せず、時差があるこ...
目次MySQL ベースの検索エンジンの実装1. ngram全文パーサー2. 全文インデックスを作成す...
必要Zabbix で DingTalk アラームを設定する方法は、Prometheus で Ding...
問題を見つける最近MySQLをMySQL 5.7にアップグレードした後、次のようなクエリでグループ化...
インデックスとは何ですか?なぜインデックスを作成するのですか?インデックスは、列に特定の値を持つ行を...