Контроль сообщений об ошибках

Оценить
(0 голоса)

Sybase ASE регистрирует сообщения об ошибках в файле error log, который обычно находится в каталоге $SYBASE. Вы можете определить альтернативный файл сообщений об ошибках посредством передачи СУБД Sybase параметра -е во время ее загрузки, как показано в следующей команде:

sybase% $SYBASE/$SYBASE_ASE/bin/dataserver -cMySYBASE.cfg -e/home/err.log

Генерирование планов запросов

Весьма полезной является возможность выявлять те запросы, которые потребляют большую часть времени ЦП и вызывают большинство операций ввода/вывода, гак как может оказаться, что данный запрос можно переписать менее затратным способом.

Воспользуйтесь командой set showplan on в сеансе isql для того, чтобы просмотреть план выполнения запроса, сгенерированный оптимизатором. Когда вы представляете запрос, СУБД Sybase показывает план данного запроса и выполняет его. Воспользуйтесь командой set statistics io on для того, чтобы зарегистрировать количество логических и физических операций чтения и записи, а командой set statistics time on - время ЦП и астрономическое время, требуемое для выполнения данного запроса.

Чтобы просто сгенерировать план без выполнения запроса, можно воспользоваться командой set noexec on. Обратите внимание на то, что все установки сеанса и флаги трассировки должны быть на своих местах еще до выполнения команды set noexec on, так как ASE фактически не будет выполнять никаких последующих команд за исключением set noexec off. На рисунке 23.5 показаны результаты представления запроса из сеанса isql, в котором все параметры - showplan, statistics io и statistics time - установлены в значение on.

По умолчанию все установки - showplan, statistics и noexec - отключены, когда вы начинаете сеанс isql; на другие сеанса эти установки не оказывают влияния, поскольку они специфичны для конкретного сеанса.

Вы можете заставить оптимизатор четко придерживаться именно того порядка объединения, который был определен в некотором запросе, а не того, который указывается как оптимальный. Такое поведение достигается посредством выполнения команды set f orceplan on перед выполнением данного запроса. Однако будьте внимательны с этой опцией, поскольку она может не дать заметного улучшения во время выполнения запроса, и не забудьте установить ее в значение off, как только данный запрос будет завершен.

В приведенном примере оптимизатору дана инструкция использовать индекс custindex посредством задания идентификатора индекса пользователя, то есть 2, после таблицы. Значение 0 в этом случае принудительно бы вызвало сканирование таблицы. В Sybase 11 можно просто задавать имя индекса, заменяя (2) на (index custindex), или (index customer), для того, чтобы вынудить оптимизатор использовать соответственно заданный индекс на основной таблице или сканировать ее. Повторим еще раз, что эту опцию следует применять с осторожностью. Перед тем как постоянно вынуждать к выбору индекса, сначала проверьте вероятное воздействие каждой альтернативы, выполняя запрос с установленными опциями showplan и statistics.

Причины, которые лежат в основе выбора, сделанного оптимизатором Sybase, не всегда могут быть понятны. К счастью, можно добиться большего понимания того, как этот выбор был сделан, включая флаги трассировки с помощью dbcc (Database Consistency Checker - программы проверки непротиворечивости БД). Например, можно включить опции трассировки с помощью команды dbcc traceon (3604, 302), которая включает флаги трассировки 3604 и 302. С помощью единственной команды может быть включен один или более флагов трассировки.

Далее приведены наиболее интересные флаги трассировки:

•             -1 - Применяет флаги трассировки ко всем пользовательским сеансам.

•             302 - Показывает информацию выбора индексов для каждой таблицы.

•             310 - Показывает информацию выбора порядка объединения.

•             3604 - Посылает вывод трассировки клиентскому сеансу.

•             3 605 - Посылает вывод трассировки в журнал ошибок Sybase по имени errorlog.

Подробнее в этой категории: « Мониторинг Sybase ASE Настройка Sybase ASE »
Настройка Sybase ASE
Рекомендации по настройке памяти
Кэши данных и буферные пулы
Мониторинг кэша данных
Настройка ввода/вывода

Добавить комментарий


Защитный код
Обновить