2013-05-17 3 views
1

Когда я искал некоторую переменную состояния с помощью следующей команды и получил:Как отличить, какие переменные используются для движка innodb или для механизма MyIsam?

mysql> show global status like '%key%'; 

+------------------------+--------+ 
| Variable_name   | Value | 
+------------------------+--------+ 
| Com_assign_to_keycache | 0  | 
| Com_preload_keys  | 0  | 
| Com_show_keys   | 0  | 
| Handler_read_key  | 713132 | 
| Key_blocks_not_flushed | 0  | 
| Key_blocks_unused  | 14497 | 
| Key_blocks_used  | 12  | 
| Key_read_requests  | 48622 | 
| Key_reads    | 0  | 
| Key_write_requests  | 9384 | 
| Key_writes    | 0  | 
+------------------------+--------+ 
11 rows in set (0.00 sec) 

мне было любопытно, почему и значение Key_reads и key_writes равны 0, и гугле. Ударная ссылка сказала мне, что ключевые ключевые переменные используются в движке MyIsam.

Why mysql status key_reads,key_reads_request's values are zero?

Как мы знаем, какие переменные являются orientied Innodb двигателя, некоторые из них используются только в MyISAM двигателя. Где я могу найти документ? Спасибо за любой вклад.

ответ

2

Посмотрите эту страницу на server status variables. Документация не является всеобъемлющей, и я бы рекомендовал вам продолжить поиск в тех интервалах, если она не соответствует определенной переменной состояния. Например, key_reads не упоминалось о том, что имеет ничего общего с MyISAM, поэтому вы были правы, чтобы продолжать копать. Я нашел слайд-шоу для получения полезной информации: см. this presentation, в котором содержится информация о различных переменных состояния. Тем не менее, вы, вероятно, не сможете узнать 100% о каждой переменной, не глядя на исходный код сервера MySQL!

Надежда некоторых это помогает ...

+1

Regading это очень переменной ('key_reads'), упоминание о его время MyISAM только был [добавлен в v5.6] (Http: //dev.mysql. ком/док/RefMan/5,6/а/сервер-статус-variables.html # statvar_Key_reads). Обратите внимание, что MyISAM использовалось только для хранения. Я считаю, что любая документация, которая не упоминает InnoDB явно, скорее всего применима только к MyISAM. – RandomSeed