Oracle 10g - определение среднего числа одновременных подключений - PullRequest
0 голосов
/ 13 апреля 2010

Можно ли определить среднее число одновременных подключений при установке базы данных размером 10 г?

Есть идеи ??

Ответы [ 3 ]

1 голос
/ 13 апреля 2010

Вероятно, это больше вопрос ServerFault.

На базовом уровне вы могли бы сделать это, регулярно запрашивая v $ session для подсчета количества текущих сеансов, сохранения этого числа где-то и усреднения его по времени.

Но уже естьхорошие утилиты доступны, чтобы помочь с этим.Посмотрите на STATSPACK .Затем посмотрите сценарии, показанные здесь , чтобы начать работу.

В качестве альтернативы вы можете установить коммерческое приложение для мониторинга, например Spotlight, на Oracle .

0 голосов
/ 13 апреля 2010

Хитрый бит записывает соединения. По умолчанию Oracle этого не делает, поэтому, если у вас ничего нет на месте, у вас не будет исторической записи.

Самый простой способ начать запись соединений - это встроенные функции аудита Oracle. Это так просто, как

audit session
/

Мы можем видеть записи каждого соединения в представлении, называемом dba_audit_session.

И что теперь? В следующем запросе используется общее табличное выражение для генерации диапазона значений даты и времени, охватывающих 8 июля 2009 г., по пять минут. Вывод CTE присоединяется к представлению аудита на эту дату; Подсчет рассчитывается для каждого соединения, которое охватывает пятиминутный прирост.

with t as
     ( select to_date('08-JUL-2009') + ((level-1) * (300/86400)) as five_mins
       from dual connect by level <= 288)
select to_char(t.five_mins, 'HH24:MI') as five_mins
       , sum(case when t.five_mins between timestamp and logoff_time 
                  then 1 
                  else 0 end) as connections  
from t
     , dba_audit_session ssn  
where trunc(ssn.timestamp) = to_date('08-JUL-2009')
group by to_char(t.five_mins, 'HH24:MI')
order by t.five_mins
/

Затем вы можете использовать этот запрос в качестве входных данных для запроса, который вычисляет среднее количество соединений.

Это довольно грубая реализация: я выбираю пятиминутные приращения из соображений отображения, но, очевидно, чем более мелкий прирост, тем точнее мера. Будьте осторожны: если вы сделаете приращения слишком мелкозернистыми и у вас будет много соединений, результирующее перекрестное соединение займет много времени!

0 голосов
/ 13 апреля 2010

Если у вас настроен Oracle Enterprise Manager, вы можете создать метрику, определяемую пользователем, которая записывает SELECT COUNT (*) FROM V $ SESSION. Выберите Связанные ссылки -> Пользовательские метрики, чтобы настроить новую Пользовательскую метрику. Как только он соберет некоторые данные, вы можете получить данные в необработанном виде, или он сделает некоторые базовые графики для вас. В качестве бонуса вы также можете настроить оповещение, если хотите получать по электронной почте, когда показатель достигает определенного значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...