詳細なバックグラウンドスレッドmysqlの

1.mysqlバックグラウンドスレッド
マスタースレッド、読み取りスレッド、書き込み:MySQLのバックグラウンドスレッドは、主を含め、タスクは、提出されたサーバとユーザの正常な動作を維持するために使用されるスレッド、REDOログ・スレッド、変更バッファスレッド、ページ・クリーナースレッド、パージスレッド、チェックポイント、エラー監視スレッド、ロックモニタスレッドのように。

詳細なバックグラウンドスレッド2.mysql
1)スレッドマスター
マスターにスレッド優先順位が最も高いが、その内部にはいくつかのサイクルが含まれています。メインループ(ループ)、バックグラウンドループ(バックグラウンドループ)、リフレッシュサイクル(フラッシュループ)、サイクル一時停止(ループを停止します)。マスタスレッドは、各スイッチングサイクルの動作の間に、その内部状態に関連する
動作のほとんどはメインループ(ループ)で完了し、それは1と10Sは、2つの操作を含む。
1S操作を含む:ログバッファがにフラッシュされますディスク(常に、トランザクションがまだ提出されていない場合でも);アップディスク(可能)に100の新しいブラシの汚れのページへ;バッファおよび変更(可能性)の実装と運用、ユーザが現在アクティブでない場合、バックグラウンドループに切り替えることなど
10S操作は、(可能)ディスクにリフレッシュ100汚れたページを、(常に)バッファ内の5つの変更までマージし、ログバッファがディスク(常に)にフラッシュされます。(常に)、不要なページを削除元に戻す、または100を更新しますディスクへの10本のダーティページ(常に)ように(常に)のチェックポイントを生成します。

2)リードスレッド
を読んスレッドのmysqlを読むためのスレッドは、デフォルトでは、データ・ページを担当しているユーザーは、読み取り要求のスレッドを開始する。innodb_read_io_threadsオプションによって制御され、読み出し要求キューに置かれているディスクから読み出される4、で、スレッドを読んで読み取り要求キューからの読み出しを取得し、タスクを完了します。

3)書き込みスレッド 
スレッドスレッドのmysqlを書き込むための書き込み、デフォルトでは、ディスクへの書き込みバッファページからデータを担当している、4ですinnodb_write_io_threads制御オプションコントロール.page_cleanerスレッドで構成されているプットへの書き込み要求と書き込み要求キューを開始、書き込みスレッドが書き込みからのリクエスト取得するキューと完全なタスクを記述します。

4)スレッドのREDOログ・
リドゥスレッドをログには、REDOログ・ファイルにフラッシュされたログバッファの内容に責任があります。

5)変更スレッドバッファ
の変更バッファの変更(変更バッファ)の内容を担当するスレッドのバッファをディスクにフラッシュされています。

6)スレッドクリーナーページ
ページクリーナーは、スレッドのページリフレッシュ汚いスレッド、以降MySQL5.7から複数の増加の原因です。

7)パージスレッド
スレッドアンドゥパージは役に立たないページを削除する責任があります。演算の結果は、DML文が取り消しを生成するように、システムは、それはまた、削除対象としてマークされているが、必要なパージ操作でアンドゥページに定期的に清掃する必要があるが、まだ無駄なクラスタ化インデックスデータのクリーンアップおよび二次浄化.mysql5.6はinnodb_purge_threadオプションによって制御される外パージスレッドに専用のマスタ・スレッドから分離し始めた。デフォルトでは、32の最大値を調整することが可能です。

8)スレッドチェックポイント
スレッドを担当するチェックポイントは、REDOログを切り替える際に、チェックポイントを実行して起こります。

9)スレッドエラーモニタ
エラーモニタは、スレッドMySQLのエラー監視を担当しています。

10)スレッドロックモニタ
ロックモニタは、MySQLのロックを監視する責任があるスレッドを。

公開された171元の記事 ウォン称賛46 ビュー190 000 +

おすすめ

転載: blog.csdn.net/LHDZ_BJ/article/details/91976804