1. 一般的なMySQLの設定以下のすべての構成パラメータは、32G のメモリを搭載したサーバーに基づいています。 1. 独立した表領域を開く
2. MySQL サービスで許可される同時セッション数の上限は、デフォルトでは 151 です。「接続数が多すぎます」というエラー メッセージが頻繁に表示される場合は、この値を増やす必要があります。
3. オペレーティングシステムがリスニングキューに保持できる接続数
4. 各クライアント接続に許容されるエラーの最大数。この数を超えると、MYSQL サーバーが再起動されるか、flush hosts コマンドによってこのホストの関連情報がクリアされるまで、MYSQL サーバーはこのホストの接続要求を禁止します。
5. すべてのスレッドによって開かれたテーブルの数
6. 各接続で送信される最大データ サイズは 1G で、1024 の倍数である必要があります。通常は、最大の BLOB の値に設定されます。
7. リクエストの最大接続時間
8. ソートバッファはORDER BYおよびGROUP BYキューによるソートを処理するために使用されます。
9. インデックスなしのテーブル全体のスキャンの最小バッファサイズ
10. クエリバッファサイズ
11. 1回のクエリで使用できるバッファサイズを指定します。デフォルトは1Mです。
12. デフォルトのトランザクション分離レベルを設定する
13. スレッドが使用するヒープ サイズ。この値は、ストアド プロシージャの再帰深度と、メモリ内で処理できる SQL ステートメントの複雑さを制限します。このメモリ量は、接続ごとに予約されます。
14. バイナリログを有効にする
15. バイナリログ形式: 行ベース
16. InnoDB は、インデックスと生データを格納するためにバッファ プールを使用します。この変数は、サーバーの物理メモリ サイズの 80% に設定できます。
17. IO操作を同期するために使用されるIOスレッドの数
18. Innodb コア内で許可されるスレッド数の推奨設定は、CPU の数とディスクの数の 2 倍です。
19. ログデータをバッファリングするために使用されるバッファのサイズ
20. ロググループ内の各ログファイルのサイズ
21. ロググループ内のファイル総数
22. SQL文がロールバックされる前にInnoDBトランザクションがInnoDB行ロックを待機する時間
23. 遅いクエリレコードのしきい値期間はデフォルトで10秒です
24. インデックスを使用しないクエリを記録する
my.cnf の例: [mysqld] データディレクトリ=/var/lib/mysql ソケット=/var/lib/mysql/mysql.sock シンボリックリンク=0 innodb_file_per_table = 1 innodb_buffer_pool_size = 6442450944 #メモリが不足している場合はエラーが報告されます innodb_file_io_threads = 4 innodb_thread_concurrency = 16 innodb_log_buffer_size = 16M innodb_log_file_size = 512M innodb_log_files_in_group = 3 innodb_lock_wait_timeout = 120 log_bin = /var/lib/mysql/mariadb-bin binlog_format = 行 遅いクエリログ 長いクエリ時間 = 2 インデックスを使用しないログクエリ transaction_isolation = 繰り返し読み取り クエリキャッシュサイズ = 128M クエリキャッシュ制限 = 4M 最大接続数 = 8000 バックログ = 300 最大接続エラー数 = 1000 オープンファイル制限 = 10240 最大許容パケット = 32M 待機タイムアウト = 10 ソートバッファサイズ = 16M 結合バッファサイズ = 16M スレッドスタック = 512K 2. MySQLパフォーマンスストレステスト一般的なテストツール:
mysqlslap ツールの紹介 mysqlslap は mariadb パッケージから提供されます。テスト中、デフォルトで mysqlslap スキーマが生成され、テスト テーブル t1 が生成され、テスト データがクエリされて挿入され、mysqlslap ライブラリが自動的に生成されます。すでに存在する場合は、まず削除されます。 --only-print を使用して実際のテスト プロセスを印刷すると、テスト全体が完了した後、データベースにトレースが残されません。 一般的なオプション:
テスト例: 1) シングルスレッドテスト [root@centos7 ~]# mysqlslap -a -uroot -p パスワードを入力してください: ベンチマーク すべてのクエリを実行するのにかかった平均秒数: 0.004 秒 すべてのクエリを実行するのに要する最小秒数: 0.004 秒 すべてのクエリを実行する最大秒数: 0.004 秒 クエリを実行しているクライアントの数: 1 クライアントあたりの平均クエリ数: 0 2) マルチスレッドテストでは、同時接続をシミュレートするために –concurrency を使用します。 [root@centos7 ~]# mysqlslap -uroot -p -a -c 500 パスワードを入力してください: ベンチマーク すべてのクエリを実行するのにかかった平均秒数: 3.384 秒 すべてのクエリを実行するための最小秒数: 3.384 秒 すべてのクエリを実行する最大秒数: 3.384 秒 クエリを実行しているクライアントの数: 500 クライアントあたりの平均クエリ数: 0 3) 異なるストレージエンジンのパフォーマンスを同時にテストして比較する [root@centos7 ~]# mysqlslap -uroot -p -a --concurrency=500 --number-of-queries 1000 --iterations=5 --engine=myisam,innodb --debug-info パスワードを入力してください: ベンチマーク エンジンmyisamのために実行 すべてのクエリを実行するのにかかった平均秒数: 0.192 秒 すべてのクエリを実行するのに要する最小秒数: 0.187 秒 すべてのクエリを実行する最大秒数: 0.202 秒 クエリを実行しているクライアントの数: 500 クライアントあたりの平均クエリ数: 2 ベンチマーク エンジン innodb の実行 すべてのクエリを実行するのにかかった平均秒数: 0.355 秒 すべてのクエリを実行するための最小秒数: 0.350 秒 すべてのクエリを実行する最大秒数: 0.364 秒 クエリを実行しているクライアントの数: 500 クライアントあたりの平均クエリ数: 2 ユーザー時間 0.33、システム時間 0.58 最大常駐セットサイズ 22892、積分常駐セットサイズ 0 非物理ページフォールト 46012、物理ページフォールト 0、スワップ 0 ブロック入力 0 出力 0、メッセージ入力 0 出力 0、シグナル 0 自発的なコンテキストスイッチ 31896、非自発的なコンテキストスイッチ 0 4) 同時クエリ数500と1000、合計クエリ数5000でテストを実行する [root@centos7 ~]# mysqlslap -uroot -p -a --concurrency=500,1000 --クエリ数 5000 --debug-info パスワードを入力してください: ベンチマーク すべてのクエリを実行するのにかかった平均秒数: 3.378 秒 すべてのクエリを実行するための最小秒数: 3.378 秒 すべてのクエリを実行する最大秒数: 3.378 秒 クエリを実行しているクライアントの数: 500 顧客あたりの平均クエリ数: 10 ベンチマーク すべてのクエリを実行するのにかかった平均秒数: 3.101 秒 すべてのクエリを実行するための最小秒数: 3.101 秒 すべてのクエリを実行する最大秒数: 3.101 秒 クエリを実行しているクライアントの数: 1000 クライアントあたりの平均クエリ数: 5 ユーザー時間 0.84、システム時間 0.64 最大常駐セットサイズ 83068、積分常駐セットサイズ 0 非物理ページフォールト 139977、物理ページフォールト 0、スワップ 0 ブロック入力 0 出力 0、メッセージ入力 0 出力 0、シグナル 0 自発的なコンテキストスイッチ 31524、非自発的なコンテキストスイッチ 3 5) 反復テスト [root@centos7 ~]# mysqlslap -uroot -p -a --concurrency=500 --number-of-queries 5000 --iterations=5 --debug-info パスワードを入力してください: ベンチマーク すべてのクエリを実行するのにかかった平均秒数: 3.307 秒 すべてのクエリを実行するのに要する最小秒数: 3.184 秒 すべてのクエリを実行する最大秒数: 3.421 秒 クエリを実行しているクライアントの数: 500 顧客あたりの平均クエリ数: 10 ユーザー時間 2.18、システム時間 1.58 最大常駐セットサイズ 74872、積分常駐セットサイズ 0 非物理ページフォールト 327732、物理ページフォールト 0、スワップ 0 ブロック入力 0 出力 0、メッセージ入力 0 出力 0、シグナル 0 自発的なコンテキストスイッチ 73904、非自発的なコンテキストスイッチ 3 上記は、MySQL シリーズ 15: 一般的な MySQL 構成とパフォーマンス ストレス テストの詳細な内容です。一般的な MySQL 構成とパフォーマンス ストレス テストの詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: htmlハイパーリンクaのクリックイベントの後、hrefで指定されたアドレスにジャンプします。
>>: Dockerを使用してRedisクラスターを構築する方法
長い間コンピューターで mysql を使用していなかったので、パスワードを忘れてしまいました。でも、...
1. Flashプラグインパッケージのダウンロードアドレス: https://get.adobe.c...
CSS でテキストアイコンを実装する方法 /*アイコンスタイル*/ .nav-icon-norma...
1. インデックスはnull値を保存しないより正確に言うと、単一列インデックスには null 値は格...
<br />このシリーズの最初のセクションでは、Web サイトのパフォーマンスを向上させ...
Docker コンテナはサービスを提供し、ポート 8888 をリッスンします。外部からアクセスできる...
目次setStateを使用する理由setStateの使用法非同期または同期更新要約するsetStat...
多くの場合、 Web デザインが完成した後でデザイナーの無知が露呈し、批判されることがあります。彼ら...
目次1. 特徴2. 例3. オプション4. 基本的な文法5. ライフサイクル6. ルーティング管理 ...
初回の読み込みを高速化できるルートの遅延読み込みをどうして忘れられるでしょうか?ルーティングの遅延読...
キーの入力を求められた場合は、[キーがありません]を選択します。デスクトップエクスペリエンスを選択す...
目次質問:答え:現実:知識ポイント結論は:要約する質問: MySQLフィールド、unsigned i...
たとえば、<u>には終了文字がなく、ブラウザはそれを認識します。 SHTML は Ser...
ゲームのソースコードのダウンロードアドレスを取得するためのJavaScript:クリックしてソースコ...
CSS3 のボックス サイズ設定 (content-box と border-box) CSS3 の...