Архив рубрики «Администрирование базы данных»
MySQL хранит множество файлов журналов (регистрации событий), которые могут оказаться для вас полезными. По большей части эти файлы по умолчанию не создаются, поэтому, если вы хотите их иметь, необходимо активизировать запись файлов журнала. Включить запись любого из файлов журнала можно с помощью опций командной строки при запуске сервера или с помощью команды set.
Ниже приведен список журналов, которые можно создать.
■ Журнал регистрации ошибок. Отслеживает все возникающие ошибки. Единственный из журналов, запись в который по умолчанию включена, размещается в вашем каталоге данных. Файл называется hostname.err в Linux и mysql. err в Windows. Можно назначить ему любое другое расположение, используя опцию 1од-еггог=имя_файла в файле конфигурации my. ini (или ту. cnf).
■ Журнал регистрации запросов. Регистрирует все запросы, выполняемые системой. Можно включить запись этого журнала и указать его расположение с помощью опции 1од=имя_файла.
■ Журнал двоичной регистрации. Регистрирует все запросы, изменяющие данные. Заменил журнал регистрации обновлений, который все еще существует и будет существовать до версии MySQL 5.0. Можно включить запись этого журнала и указать его расположение с помощью опции log-bin=
имя_файла. •. ‘.
■ Журнал регистрации медленных запросов. Регистрирует все запросы, время выполнения которых оказалось больше, чем значение, хранимое переменной long_query_time. Можно включить запись этого журнала и указать его расположение с помощью опции log-slow-queries=*»<ts_$aJ&ia.
Все указанные выше журналы, кроме журнала двоичной регистрации, являются простыми текстовыми файлами. Журнал двоичной регистрации можно просмотреть с помощью команды
mysqlbinlog logfile
Использование журнала регистрации медленных запросов будет обсуждаться в главе 19, “Оптимизация запросов”.
Файлы журналов регистрации будут со временем разрастаться, поэтому желательно на регулярной основе менять файлы журналов. В среде Linux система
MySQL предлагает сценарий mysql-log-rotate, избавляющий от необходимости делать это вручную.
При использовании другой операционной системы вы можете переместить старые файлы журналов в другое место на диске вручную и дать указание MySQL начать использование новых файлов журналов с помощью команды
mysqladmin flush-logs
Программа mysqladmin имеет очень много опций, польза и частота применения которых весьма различны.
Некоторые задачи могут быть выполнены как с помощью команд SQL, так и с помощью mysqladmin — например, создание и уничтожение баз данных:
mysqladmin create имяБД
mysqladmin drop имяБД
Типичным примером использования mysqladmin является получение информации о сервере и его текущем состоянии. Такая информация может быть как очень простой (”Доступен ли сервер?” — ping), так и существенно более подробной, например, включающей список всех доступных переменных или процессов. Ниже приводится несколько примеров использования mysqladmin.
Чтобы выяснить, включен ли сервер, используйте
mysqladmin ping
Чтобы выяснить, какая версия программного обеспечения сервера MySQL установлена на вашей машине, используйте
mysqladmin version
Чтобы получить короткое или длинное сообщение о статусе сервера, используйте
mysqladmin status mysqladmin extended-status
Чтобы получить список активных потоков в рамках данного сервера, используйте
mysqladmin processlist
Получив список процессов (потоков), вы можете принудительно завершить выполнение некоторых из них по вашему усмотрению, используя команду
mysqladmin kill idl,id2,id3…
Чтобы напечатать значения переменных MySQL, используйте
mysqladmin variables
■ Сервер можно запустить с помощью mysqladmin, с помощью запуска исполняемого файла mysqld или с помощью Диспетчера сервисов Windows.
■ Завершить работу сервера можно с помощью mysql. server stop или mysqladmin shutdown.
■ Используйте mysqlshow или SHOW для получения информации о текущем состоянии базы данных и сервера MySQL.
■ Установить переменные можно с помощью set переменная-значение;.
я Увидеть список выполняемых потоков можно с помощью show processlist, а завершить их выполнение — с помощью kill id_npoiiecca.
я Очистить кэши можно с помощью FLUSH и RESET.
■ Увеличить скорость работы объединений можно с помощью analyze table имя_ та блицы;.
я MySQL сохраняет информацию о событиях в журнале регистрации ошибок, журнале регистрации запросов, журнале двоичной регистрации (о запросах, изменяющих данные) и журнале регистрации медленных запросов (о запросах, выполнение которых заняло больше времени, чем значение переменной long_query_time).