3

mysql のステータスについて混乱があります。mysql> '%key%' のようなステータスを表示します。

+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| Com_assign_to_keycache | 0     |
| Com_preload_keys       | 0     |
| Com_show_keys          | 0     |
| Handler_read_key       | 2     |
| Key_blocks_not_flushed | 0     |
| Key_blocks_unused      | 13396 |
| Key_blocks_used        | 0     |
| Key_read_requests      | 0     |
| Key_reads              | 0     |
| Key_write_requests     | 0     |
| Key_writes             | 0     |

しかし、サーバーには大量の (毎日 10 億を超える) 挿入、更新、およびクエリがありますが、ステータスの値が 0 になっているのはなぜですか。サーバーはほぼ 3 日間実行されています。 .サーバーのステータスをフラッシュしませんでした。一部のデータベース構成エンジン = innodb、key_buffer = 16M、innodb_buffer_pool_size = 2147483648。情報をありがとう。

4

2 に答える 2

4

おそらく InnoDB テーブルを使用していますか?

これらの Key_XXX サーバー ステータス値は、MyISAM テーブル用です。

于 2012-05-15T07:10:49.523 に答える
1

あなたが見ている値は MyISAM テーブルのものです。これらは MyISAM キー キャッシュを表します。

http://dev.mysql.com/doc/refman/5.0/en/myisam-key-cache.html

このキャッシュは、最近使用されたキーがすぐに再利用される可能性が高いことを期待して、最近使用されたキーを保持します。したがって、それらはキャッシュする価値があります。

innodb を使用しているため、キー キャッシュは使用されていません。

チューニングのために、キー キャッシュ専用のメモリ量を最小限に抑える必要があります。innodb 処理から取り除かれたメモリはおそらく無駄になります -

于 2012-05-16T02:09:00.807 に答える