ホームページ  >  記事  >  データベース  >  MySQL 最適化に関するいくつかの操作

MySQL 最適化に関するいくつかの操作

迷茫
迷茫オリジナル
2017-03-26 13:13:231203ブラウズ

1. キャッシュ プール

MySQL はキャッシュ プールを介して設計されており、データの一部がキャッシュ プール内で見つかった場合、その一部がメモリに保存されます。キャッシュから直接取得できない場合は、ディスクからロードしてください。そのため、大量のメモリを使用できるように、データベース サーバーは 64 ビット オペレーティング システムを使用することをお勧めします。次のパラメータは、メモリ プール
の設定に使用されます:

SHOW VARIABLES LIKE "innodb_buffer_pool_instances"

キャッシュ プールの数を確認します。キャッシュ プールの数は、globle を通じて、または

設定ファイル で直接設定できます。

show VARIABLES like "innodb_buffer_pool_size"

各キャッシュ プールのサイズを確認し、

クエリ出てくるのはバイト数です。

この設定は自身のサーバーの機能を考慮する必要があることに注意してください

キャッシュのヒット率を検証するには、

SHOW ENGINE INNODB STATUS

を渡すことができます。1 行の出力は非常に重要であり、ヒットを確認できます。 rate:

Buffer pool hit rate 1000 / 1000

はキャッシュを意味します。ヒット率は、一般に 95% 未満にすることはできません

2.LRU リスト

キャッシュ内のデータは LRU に保存されます。つまり、クエリされた最新のデータは、これはホットスポットデータを意味しますが、この LRU アルゴリズムにはいくつかのバリエーションがあります。具体的には、

が毎回クエリされるデータは、先頭の位置ではなく中央に挿入されます。この位置がデフォルトの位置になります。これは、一部のテーブル スキャン操作ですべての

データが更新されないようにするためです。

SHOW VARIABLES LIKE "innodb_old_blocks_pct"

は、中間点の位置を表します。

、これは約 3/5 です。もう 1 つのパラメータは

SHOW VARIABLES LIKE "innodb_old_blocks_time"
で、これはデータが中間点に挿入されたときに有効になるまでにかかる時間を表します。

実際の環境でホットスポットデータが比較的集中している状況に遭遇した場合、LRU

のパラメータを設定することでホットスポットデータがフラッシュされるのを防ぐことができます

以上がMySQL 最適化に関するいくつかの操作の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。