Как мне истечь сеанс pl sql через 30 минут? - PullRequest
1 голос
/ 27 декабря 2010

Мне нужно сохранить сеанс в течение 30 минут, а затем убить его.

1 Ответ

4 голосов
/ 29 декабря 2010

Oracle не истекает сессий, он истекает соединения. Это делается с помощью профилей. Это шаблоны распределения ресурсов, которые администратор базы данных может создавать и назначать пользователям.

Если вы хотите прервать сеанс после тридцати минут бездействия, создайте ПРОФИЛЬ и установите IDLE_TIME = 30. Если вы хотите ограничить общее время соединения 30 минутами, установите CONNECT_TIME = 30. Узнать больше .

Обратите внимание, что эти тайм-ауты применяются фоновым процессом PMON; это периодически просыпается, и поэтому бездействующий сеанс мог бездействовать более тридцати минут, прежде чем PMON его снимет.

Кроме того, база данных должна быть настроена для динамического управления ресурсами. Существует параметр инициализации RESOURCE_LIMIT , который управляет поведением. Его значение по умолчанию - ЛОЖЬ (потому что при отслеживании таких вещей есть издержки).

...