Навигация

Поиск по Сайту

Партнеры

Самоучитель. Книги.

Статистика

    Каталог@Mail.ru - каталог ресурсов интернет

Синтаксис SHOW STATUS в MySQL

Главная Страница » Книги по PHP » MySQL уроки для начинающих с нуля » Синтаксис SHOW STATUS в MySQL

SHOW STATUS обеспечивает информацию состояния сервера (подобно mysgladmin extended-status). Вывод походит на показанное ниже, хотя формат и числа будут другими:

+--------------------------+------------+
| Variable_name            | Value      |
+--------------------------+------------+
| Aborted_clients          | 0          |
| Aborted_connects         | 0          |
| Bytes_received           | 155372598  |
| Bytes_sent               | 1176560426 |
| Connections              | 30023      |
| Created_tmp_disk_tables  | 0          |
| Created_tmp_tables       | 8340       |
| Created_tmp_files        | 60         |
| Delayed_insert_threads   | 0          |
| Delayed_writes           | 0          |
| Delayed_errors           | 0          |
| Flush_commands           | 1          |
| Handler_delete           | 462604     |
| Handler_read_first       | 105881     |
| Handlep_read_key         | 27820558   |
| Handler_read_next        | 390681754  |
| Handler_read_prev        | 6022500    |
| Handler_read_rnd         | 30546748   |
| Handler_read_rnd_next    | 246216530  |
| Handler_update           | 16945404   |
| Handler_write            | 60356676   |
| Key_blocks_used          | 14955      |
| Key_read_requests        | 96854827   |
| Key_reads                | 162040     |
| Key_write_requests       | 7589728    |
| Key_writes               | 3813196    |
| Max_used_connections     | 0          |
| Not_flushed_key_blocks   | 0          |
| Not_flushed_delayed_rows | 0          |
| Open_tables              | 1          |
| Open_files               | 2          |
| Open_streams             | 0          |
| Opened_tables            | 44600      |
| Questions                | 2026873    |
| Select_full_join         | 0          |
| Select_full_range_join   | 0          |
| Select_range             | 99646      |
| Select_range_check       | 0          |
| Select_scan              | 30802      |
| Slave_running            | OFF        |
| Slave_open_temp_tables   | 0          |
| Slow_launch_threads      | 0          |
| Slow_queries             | 0          |
| Sort_merge_passes        | 30         |
| Sort_range               | 500        |
| Sort_rows                | 30296250   |
| Sort_scan                | 4650       |
| Table_locks_immediate    | 1920382    |
| Table_locks_waited       | 0          |
| Threads_cached           | 0          |
| Threads_created          | 30022      |
| Threads_connected        | 1          |
| Threads_running          | 1          |
| Uptime                   | 80380      |
+--------------------------+------------+

Здесь рассматриваются далеко не все переменные сервера, а только те, которые могут пригодиться пользователю. Часть переменных относится к потоку пользователя, часть - общая для всего сервера. Переменные состояния сервера, перечисленные выше, имеют значения (табл. 4.10):

Таблица 4.10. Переменные из SHOW STATUS

Переменная Значение
Aborted_clients Число подключений, прерванных потому, что клиент не закрыл подключение правильно. Подробности в разделе 11.2 «Ошибки связи/прерванные соединения»
Aborted_connects Число попыток соединиться с сервером MySQL, которые потерпели неудачу. Подробности в разделе 11.2 "Ошибки связи/прерванные соединения»
Bytes_received Число байт, полученных с клиентов
Bytes_sent Число байт, посланных клиентам
Connections Число попыток подключения к серверу MySQL
Created_tmp_disk_tables Число неявных временных таблиц на диске, созданных при выполнении инструкций
Created_tmp_tables Число неявных временных таблиц в памяти, созданных при выполнении инструкций
Created_tmp_files Сколько временных файлов создал mysqld
Delayed_insert_threads Число действующих отсроченных потоков драйвера вставки
Delayed_writes Число строк, записанных INSERT DELAYED
Delayed_errors Число строк, записанных INSERT DELAYED, в которых произошла ошибка (вероятно, был использован двойной ключ (duplicate key))
Flush_commands Число выполненных команд FLUSH
Handler_delete Сколько раз строка была удалена из таблицы
Handler_read_first Сколько раз первая запись читалась из индекса. Если это значение высоко, предполагается, что сервер делал много полных просмотров индекса, например, SELECT col1 FROM foo, считая, что coll индексирован
Handler_read_key Число запросов на чтение строки, основанных на ключе. Если это значение высоко, это значит, что запросы и таблицы были правильно индексированы
Handler_read_next Число запросов на чтение следующей строки в порядке ключа. Это значение будет увеличено, если вы запрашиваете индексный столбец с ограничением диапазона. Оно также будет увеличено, если вы делаете индексный просмотр
Handler_read_rnd Число запросов на чтение строк, основанных на фиксированной позиции. Это значение будет высоким, если вы делаете много запросов, которые требуют сортировки результата
Handler_read_rnd_next Число запросов на чтение следующей строки в файле данных. Это значение будет высоким, если вы делаете много просмотров таблицы. Вообще это предполагает, что таблицы не были правильно индексированы или что запросы не используют индексы
Handler_update Число запросов на модификацию строк в таблице
Handler_write Число запросов на вставку строки в таблицу
Max_used_connections Максимальное число одновременных подключений
Not_flushed_delayed_rows Число строк, ждущих записи в очередях запросов INSERT DELAY
Open_tables Число открытых таблиц
Open_files Число открытых файлов
Opened_tables Число таблиц, которые были открыты
Questions Число запросов, посланных серверу
Slave_open_temp_tables Число временных таблиц, в настоящее время открытых подчиненным процессом
Slow_launch_threads Число потоков, которым понадобилось для установления соединения больше, чем slow_launch_time
Slow_queries Число запросов, которые заняли больше, чем long_query_time
Sort_merge_passes Число объединений, потребовавших сортировки. Если это значение большое, вы должны рассмотреть увеличение sort_buffer
Sort_range Число сортировок с диапазонами
Sort_rows Число сортируемых строк
Sort_scan Число сортировок, выполненных при просмотре таблицы
Table_locks_immediate Сколько раз блокировка таблицы применялась сразу
Table_locks_waited Сколько раз блокировка таблицы не могла быть применена сразу и пришлось ждать. Если это значение высоко и эффективность составляет проблему, вы должны сначала оптимизировать запросы, а затем или разделить таблицу, или использовать репликацию
Threads_connected Сколько в настоящее время открыто подключений
Threads_created Число потоков созданных чтобы обработать подключения
Threads_running Число потоков, которые сейчас не бездействуют
Uptime Сколько секунд уже работает сервер

Некоторые комментарии относительно вышеупомянутого:

- если число Opened_tables велико, то переменная table_cache, вероятно, слишком маленькая;

- если key_reads велико, то переменная key_cache, вероятно, слишком маленькая. Коэффициент кэширования может быть вычислен по формуле: key_reads/key_read_requests;

- если Handler_read_rnd велико, то у вас, вероятно, много запросов, которые требуют, чтобы MySQL просматривал целые таблицы или объединения, которые не используют ключи должным образом;

- если значение Threads_created велико, то следует увеличить переменную thread_cache_size.