Oracle

В данном разделе представлены выдержки и некоторые программы из моего диплома,
посвященного настройке и оптимизации работы сервер ORACLE.



Library Cache.

В качестве первого механизма, который необходимо настраивать для оптимальной работы сервера Oracle, все издания посвященные этому вопросу, называют Library Cache [2]. Library Cache содержит shared SQL и PL/SQL areas. Library Cache влияет на увеличение производительности, так как в нем содержатся часто используемые SQL запросы. ORACLE использует его для синтаксического анализа и определения плана выполнения оператора или процедуры. В дальнейшем при выполнении несколькими пользователями одинаковых SQL операторов (под понятием одинаковые подразумеваются идентичные SQL запросы вплоть до числа пробелов между операторами и регистра букв) и процедур скомпилированного приложения, не требуется каждый раз заново реализовывать план выполнения соответствующей процедуры или SQL запроса.

ORACLE во время своей работы собирает разнообразную статистику, которую сохраняет в системных таблицах. Статистика о том, насколько эффективно используется Library Cache, хранится в системной таблице V$LIBRARYCACHE. В этой таблице надо уделить внимание двум поля:
PINS - число раз, когда элемент в Library Cache исполнялся удачно.
RELOADS - число промахов в Library Cache, когда элемента не находилось и его приходилось перегружать. Небольшое значение RELOADS показывает высокую степень использования Library Cache.

Следующий запрос определяет отношения числа RELOAD к числу PINS:

SELECT SUM(reloads),    
               SUM(pins),   
               100 * (SUM(reloads) / SUM(pins)) 
FROM v$librarycache;
Если отношение числа RELOADS к числу PINS больше 1%, то это означает, что Library Cache необходимо настраивать. Для этого надо переписать приложение так, чтобы в нем использовались по мере возможности идентичные SQL предложения или увеличить параметр SHARED_POOL_SIZE.

Параметр SHARED_POOL_SIZE задается в файле инициализации INIT.ORA, который в Oracle 8i хранится по адресу: Имя диска\Oracle\ADMIN\Имя базы данных\pfile\. Для того, чтобы новое значение вступило в силу необходимо производить останов и перезапуск сервера ORACLE.



prev next
Hosted by uCoz