В среде HP-UX имеется больше параметров для настройки, чем в большинстве других Операционных систем. Почти во всех случаях после изменения параметров необходимо провести перестройку ядра и перезагрузку сервера. Затем, для того чтобы ОС удовлетворяла требованиям Oracle, нужно выполнить некоторые патчи ОС. Мы упомянем об этом, так как администраторам базы данных, эксплуатирующейся в среде HP-UX, необходимо знать о тех патчах ОС, которые установит системный администратор (СА) настраиваемой вычислительной установки. В обязанности АБД входит и ведение таблицы закрытия, содержащих информацию о том, какие патчи установлены и какие из них нарушают любые требования использующейся версии Oracle. Иногда эти патчи нуждаются в дополнительных действиях, чтобы Oracle по-прежнему работал без проблем. В некоторых случаях приходится сталкиваться с подобными ситуациями, так что
будьте в курсе всех изменений, произведенных с операционной системой.
В HP-UX необходимо отслеживать и настраивать параметры ядра для общей памяти и семафоров. При выполнении подобных изменений параметров требуется поставляемое HP-UX специальное управляемое меню инструментальное средство. Оно называется sam (System Administration Manager). Для того чтобы пользоваться sam, нужно иметь привилегии root. Этим делом должен заниматься СА. Тем не менее, вам по силам использовать другие команды ОС, чтобы проверять значения всех параметров ядра, для выполнения которых не требуются привилегии root. Проверка необходима для уверенности, что мы получаем именно такое ядро, которое ожидали. Команда sysdef отображает всю относящуюся к системе информацию. Можно перенаправить ее выходные данные в файл, а затем отыскивать в нем значения интересующих параметров.
В версии используется более модная команда (которая не требу-
ет привилегий root для обращения к параметрам ядра и их печати). Может
быть, для ее выполнения придется указать полный путь -
если каталог /usr/sbin не включен в переменную среды PATH. Кроме того, ее применяют для модификации параметров ядра (при наличии полномочий root), так что будьте осторожны. Пользуясь командой kmtune, можно получить значения конкретных параметров ядра, а не распечатывать их все, как это делает команда sysdef, что конечно гораздо удобнее. Полезную информацию об этих командах можно найти на страницах соответствующего руководства. Приведенный ниже пример показывает, как, используя команду kmtune, в короткой и длинной формах запросить значение параметра
semmns.
Параметр -q означает запрос, а -1 - длинную форму вывода результатов. Мы предпочитаем длинный формат, так как в этом случае для параметра ядра распечатывается его значение по умолчанию, текущее и минимальное значения.□ prodhp[oracle]% /usr/sbin/kmtune -q semmns
Parameter Value
Parameter Value
semmns 2048
prodhp[oracle]% /usr/sbin/kmtune -1 -q semmns
Parameter: semmns
Value: 2048
Default: 128
Minimum:
Module:
Имеется несколько весьма специфичных настраиваемых параметров ядра для улучшения производительности системы HP-UX. Мы поговорим о них в следующих разделах.
Асинхронный ввод/вывод
HP-UX поддерживает асинхронный ввод/вывод только для сырых устройств. Если использовать их для хранения файлов данных, имеет смысл рассмотреть вопрос о применении асинхронного ввода/вывода. При этом придется конфигурировать драйвер асинхронного ввода/вывода в ядре операционной системы HP-UX, используя утилиту
В Справочном руководстве администратора OracleSi для HP-UX перечисляются все шаги, следуя которым можно реализовать асинхронный ввод/вывод в
системах HP-UX.
Блокировка SGA в памяти
HP-UX поддерживает блокировку или прикалывание совместно используе-
мых сегментов памяти в оперативной памяти. Процесс запрашивает такую бло-
кировку при помощи операции по управлению совместно используемой
памятью со специальным параметром. Особая привилегия - MLOCK - должна
быть предоставлена группе владельцев процесса, запрашивающего эту опера-
цию. Такую операцию должен запрашивать процесс запуска системы для Oracle
(которым, как правило, владеет пользователь
лать это возможным, нужно включить в файл элемент:
мых сегментов памяти в оперативной памяти. Процесс запрашивает такую бло-
кировку при помощи операции по управлению совместно используемой
памятью со специальным параметром. Особая привилегия - MLOCK - должна
быть предоставлена группе владельцев процесса, запрашивающего эту опера-
цию. Такую операцию должен запрашивать процесс запуска системы для Oracle
(которым, как правило, владеет пользователь
oracle с
группойdba).
Чтобы сде-лать это возможным, нужно включить в файл элемент:
dba MLOCK
Если файл /etc/privgroup не существует, его необходимо создать. Затем следует выполнить команду setprivgrp -f/etc/privgroup для предоставления привилегий группам, перечисленным в файле etc/privgroup. Привилегии
переназначаются этим группам во время выполнения процесса загрузки. ОС во время загрузки выполняет сценарий /sbin/init.d/set_priv. В этом сценарии работает та же самая команда. Все, что от нас требуется, - это установить параметр инициализации LOCK_SGA равным TRUE, что должно завершить все установочные работы для использования такой опции. При следующем запуске базы данных область SGA закрепится в памяти и не будет рассматриваться демоном подкачки страниц как кандидат на участие в обычных операциях подкачки.
Но хотя эта методика улучшает производительность базы данных, она ограничивает доступную другим процессам память. Поэтому необходимость удостовериться, что при этом не пострадала общая производительность остальных процессов, также ложится на плечи АБД. Он должен проделать определенную работу, задавая вопросы, как много памяти конфигурировано системе, сколько выделено Oracle, какое количество требуется для процессов пользователей и т. д.
Настройка буферного кэша файловой системы
Для HP-UX 10.x и более поздних версий ОС может использовать (и использует) более 50% реальной памяти для буферного кэша своей файловой системы (установка по умолчанию). Этот кэш содержит блоки данных при их передаче с диска в память и из памяти на диск. В более старых версиях HP-UX (9.x и 10.x) параметр ядра
bufjxigt
определяет, как много страниц по 4096байт
распределено длябуферного кэша файловой системы. Он устанавливает верхний предел для этого кэша, который является статическим.
Однако для HP-UX 10.x компания Hewlett-Packard рекомендует устанавливать
bufpages
равным 0, разрешая тем самым создание динамического кэша. Динамическая природа кэша позволяет HP-UX приобретать для буферного кэша более 50% памяти. Два новых параметра ядра -dbc_max_}>c. и dbci_?nhi___pa
- контролируют количество общей памяти, выделяемой для буферного кэша.(#с_тах_/>сгустанавливает верхний предел, до которого разрешено расти буфер-
ному кэшу. Его значение по умолчанию равно 50% реальной памяти. Значение
по умолчанию равно 5% реальной памяти.
ному кэшу. Его значение по умолчанию равно 50% реальной памяти. Значение
по умолчанию равно 5% реальной памяти.
Когда нагрузка на систему (в нашем случае - запросы на ввод/вывод) достигает высокого уровня, ОС продолжает увеличивать буферный кэш файловой системы до максимальных размеров, разрешенных параметром
dbc_max_pct.
Но (по теории), если будут поступать запросы на память для процессов, предполагается, что ОС начнет сокращать буферный кэш файловой системы и распределять освободившиеся страницы под память для процессов.Но если требования на блоки ввода/вывода будут оставаться высокими, при-
дется делать нечто противоположное, высвобождая страницы памяти, ранее
распределенные для процессов, и выделяя их для буферного кэша. При этом
возникнут проблемы с производительностью, о чем, скорее всего, и будет доло-
как о ситуации
дется делать нечто противоположное, высвобождая страницы памяти, ранее
распределенные для процессов, и выделяя их для буферного кэша. При этом
возникнут проблемы с производительностью, о чем, скорее всего, и будет доло-
как о ситуации
page outs
(po) в выходных данных команды и как%sys командой sar по мере роста активности в системе. Если требования по памяти в системе продолжают расти, ОС вынуждена будет начать так деактивацию процессов, что на языке layperson ОС означает свопинг. Интенсивная подкачка страниц и/или свопинг вызовут в системе дополнительные накладные расходы, и полная производительность системы начнет деградировать.
Для решения проблемы необходимо рассмотреть вопрос о настройке буфер-
ного кэша файловой на меньшие значения. Идея заключается в зада-
нии достаточно низкого значения параметра позволяющего иметь
буферный кэш и в то же время оставить достаточно памяти для выделения под
процессы. Предположим, что мы начнем со значений 15% для
для Oracle рекомендует так откорректировать чтобы бу-
ферный кэш не превышал 128 Мбайт. После изменения этих параметров до
ного кэша файловой на меньшие значения. Идея заключается в зада-
нии достаточно низкого значения параметра позволяющего иметь
буферный кэш и в то же время оставить достаточно памяти для выделения под
процессы. Предположим, что мы начнем со значений 15% для
dbc_max_pctm 2%
для Oracle рекомендует так откорректировать чтобы бу-
ферный кэш не превышал 128 Мбайт. После изменения этих параметров до
предполагаемых значений было бы разумно провести мониторинг системы на
предмет подкачки страниц и узких мест и должным образом на-
строить эти параметры. Таким образом, если для поддержки базы данных используются неформатированные устройства или она сконфигурирована для использования прямого ввода/вы иода, следует попытаться уменьшить буферный кэш файловой системы, так как он больше не используется Oracle.
строить эти параметры. Таким образом, если для поддержки базы данных используются неформатированные устройства или она сконфигурирована для использования прямого ввода/вы иода, следует попытаться уменьшить буферный кэш файловой системы, так как он больше не используется Oracle.
Если для журнализированиой файловой системы (VxFS) применяется продукт HP OnlineJFS, можно избежать использования буферного кэша файловой системы. Для этого при монтировании конкретной файловой системы задейст-вуется параметр
mimache=direcl.
В таком случае данные, которые считываются из (или записываются в) журнализированных файловых систем, будут проходить мимо буферного кэша файловой системы. Кроме того, возможно исследование применения параметра монтирования convosync в сочетаниис mine ache.
Будьте в дружеских отношениях со своим системным администратором и сначала экспериментируйте со своими тестовыми (отладочными) базами данных, чтобы понять, как и что работает.< Предыдущая | Следующая > |
---|