MySQLのアーキテクチャとインデックス

 

MySQLのシステムアーキテクチャ

 

MySQLの3のアーキテクチャの合計は、上記の図に点線で分割されます。

最初のサービスはの層ではない、ほとんどがネットワークのクライアント/サーバー・ツールやサービスは、同様のアーキテクチャを持って与える、MySQLのユニークな。たとえば、次の接続処理、認可および認証、およびセキュリティ。

第二層:アーキテクチャは、MySQLのコアサービスのほとんどを含んでいます。含む:クエリの解析、分析、最適化、キャッシング、およびすべての組み込み関数(例:日付、時間、数学と暗号化機能)。同時に、すべてのストレージエンジンの機能を横切ってこの層に実装されますように、ストアドプロシージャ、トリガ、ビュー、および。

第3層は:ストレージエンジンを含みます。MySQLのデータの記憶および検索にストレージエンジン。サーバーは、APIを介して通信し、ストレージエンジン。これらのインタフェースは、上部透明照会プロシージャの違いそのストレージエンジンの違いを、遮蔽します。ストレージエンジンAPIは、「トランザクション開始」などの操作を行うために、ダース基礎となる機能が含まれていてもよいです。(それ自体が機能を実装していないので、InnoDBの外部キーの定義を解決)が、一般的ではないストレージエンジンは、互いに通信するが、単にサーバに上位層の要求に応答していない異なるストレージエンジンとの間に、SQLを解析します。

より詳細な MySQLのシステムアーキテクチャ

 

 

 

ログファイル

操作とエラーメッセージのログを記録することで、MySQLデータベース。エラーログ、バイナリログ、クエリーログ、スロークエリログとInnoDBエンジン、オンラインREDOログ、リレーログを含む一般的なログファイル。これが唯一の良いを見てする必要があります。

指数

(1)別のインデックス:インデックスは、単一の列が含まれていますが、テーブルは、個別のインデックスを複数有していてもよいです

  • 通常のインデックス: MySQLのインデックスの列定義に挿入することができ、基本的なインデックス・タイプ、制限なし、 重複値とNULL、単にクエリデータへの高速。
  • 唯一のインデックス:インデックス列の値は一意であるが、ヌル値を許可する必要があります
  • 主键索引:是一种特殊的唯一索引,不允许有空值

(2)组合索引:

      在表中的多个字段组合上创建的索引,只有在查询条件中使用了这些字段的左边字 段时,索引才会被使用,使用组合索引时遵循最左前缀集合

(3)全文索引:只有在MyISAM引擎上才能使用,只能在CHAR,VARCHAR,TEXT类型 字段上使用全文索引

(4)空间索引:空间索引是对空间数据类型的字段建立的索引

      MySQL中的空间数据类型有四种,GEOMETRYPOINTLINESTRING POLYGON。在创建空间索引时,使用SPATIAL关键字。

要求:引擎为MyISAM,创建空间索引的列,必须将其声明为NOT NULL

おすすめ

転載: www.cnblogs.com/Soul-xs/p/12109926.html