MySQLサーバのアーキテクチャおよびお問い合わせ一般的なプロセス

SqlServerのアーキテクチャは非常に似ている成分を含んで、あなたは参照することができ  https://blog.csdn.net/Hehuyi_In/article/details/94746160を  輝く心に。

図  https://www.mysql.com/common/images/PSEA_diagram.jpg 

 

あなたは見ることができますMySQLサーバアーキテクチャは、4つの層に分かれています。

  • ネットワーク接続層
  • リレーショナルエンジン層(コアサービス層)
  • ストレージエンジン層
  • 物理レイヤファイル

 

まず、ネットワーク接続層

接続プール(接続プール)

  • 等のバッファ管理ユーザー接続、スレッド、キャッシュニーズへの必要性
  • ユーザーアカウント、パスワード、およびライブラリテーブル検証権限

 

第二に、リレーショナルエンジン層(コアサービス層)

これは、以下の4つのカテゴリ(も似たのSQLServer)に分割されています。

  • SQLインタフェース(SQLインターフェイス)
  • パーサ(パーサ)
  • オプティマイザ(クエリオプティマイザ)
  • キャッシュ&バッファ(キャッシュ)

 

1. SQLインタフェース(SQLインタフェース)

  • ユーザーとリターン実行結果によって送信されたSQL文を受け取ります

 

2.パーサ(構文解析器)

  • データ構造MySQLのノウハウに解析されたSQL文
  • 同じ時にSQL構文チェックを解決します

 

3.オプティマイザ(クエリオプティマイザ)

  • SQL文を最適化し、より良い実行計画(ノート必ずしも最善)を選択するには
  • するために使用する戦略「 - プロジェクション - 選択した結合」

 

4.キャッシュ&バッファ(バッファ)

  • query_cache、テーブルキャッシュ、レコードをキャッシュ、キーキャッシュ、キャッシュおよびその他の権利が含まれています
  • クエリキャッシュは、主のMyISAMエンジンのために使用され、バージョン8.0で廃止されました。InnoDBは独自のセットのキャッシュメカニズムを持っているので、InnoDBエンジンのために意味がありません。
  • これらの機能は、キャッシュの一部を別のストレージエンジンを使用する必要がありますされたサービス層の一部であることに注意してください

 

第三に、ストレージエンジン層

  • MySQLのプラガブルなストレージエンジンには多くの種類がありますが、に応じて選択することができます。
  • 参照型の主な目的は、  https://www.cnblogs.com/andy6/p/5789248.html

 

第四に、物理ファイル層

 

どのように上記のコンポーネントが一緒に動作しますか?MySQLで単純なクエリのライフサイクルを見てください:

五、MySQLは一般的なプロセスを問い合わせます

  1. コネクタ(つまり、クライアント)はMySQLサーバのリスニングポートに要求を開始します
  2. で  接続プールは、スレッドを割り当て、接続を作成し、データベーステーブルの権限のユーザー名とパスワードを確認します
  3. あなたが開いている場合query_cacheを8.0バージョンが放棄された)、データが直接返された場合、ダウン進まないチェック
  4. SQLインタフェースの SQL文を受け、合格パーサの解析と文法テストを
  5. オプティマイザ最適化し、SQLより優れた実行計画を選択
  6. コールストレージエンジンインタフェース、オープンテーブルは、クエリを実行し、対応するキャッシュレコードのストレージエンジンをチェックキャッシュが存在するかどうか、もしあれば、戻り値は、そこにある、継続
  7. するために、ディスクの物理的なファイルのデータを検索します
  8. あなたは、必要なデータ、見つけたらまずライトバックキャッシュストレージエンジンをあなたが開いている場合query_cacheを、書きます
  9. よるSQLインターフェース・クライアントへの戻りデータ
  10. テーブルを閉じます
  11. 閉じるスレッド
  12. 接続を閉じます

 

MySQLサーバのアーキテクチャおよびクエリの一般的なプロセスのシンプルな理解、次の研究アーキテクチャInnoDBストレージエンジン。

 

参考:「MySQLのパフォーマンスチューニングのピラミッド法則」

公開された295元の記事 ウォン称賛35 ビュー80000 +

おすすめ

転載: blog.csdn.net/Hehuyi_In/article/details/105153434