Есть ли способ контролировать время выполнения хранимой процедуры? Кроме того, чтобы сделать некоторые операции, если время выполнения требуется больше, чем некоторое фиксированное времяВремя выполнения хранимой процедуры монитора в Oracle
0
A
ответ
1
Я не знаю, прямой путь, но вы можете использовать PL/SQL пакет DBMS_APPLICATION_INFO
Procedure MY_Procedure is
begin
DBMS_APPLICATION_INFO.SET_MODULE('MY_Procedure', 'Starting');
...
DBMS_APPLICATION_INFO.SET_ACTION('Still working, please be patient');
...
DBMS_APPLICATION_INFO.SET_ACTION('Finished');
END;
Хотя процедура работает вы можете (и при необходимости выполните некоторые действия):
SELECT SID, serial#, username, module, action, sql_exec_start
FROM v$session;
При необходимости вы также можете установить временную метку или время выполнения, например DBMS_APPLICATION_INFO.SET_ACTION('Started at '||systimestamp)
В случае, если вы работаете с заданиями планировщика вы можете отслеживать и останавливать работу непосредственно:
BEGIN
DBMS_SCHEDULER.SET_ATTRIBUTE(
NAME => 'MY_JOB',
ATTRIBUTE => 'MAX_RUN_DURATION',
VALUE => INTERVAL '10' MINUTE);
END;
и называют это часто:
DECLARE
CURSOR Jobs IS
SELECT JOB_NAME, LAST_START_DATE, MAX_RUN_DURATION
FROM USER_SCHEDULER_JOBS
WHERE JOB_NAME = 'MY_JOB'
AND STATE = 'RUNNING'
AND SYSTIMESTAMP - LAST_START_DATE > MAX_RUN_DURATION;
BEGIN
FOR aJob IN Jobs LOOP
DBMS_SCHEDULER.STOP_JOB('MY_JOB', FORCE => TRUE);
END LOOP;
END;
2
Для этого dbms_profiler пакет. Ранее он должен быть настроен для использования. Он создает службу таблицы. Более подробную информацию можно найти в документации: https://docs.oracle.com/cd/B19306_01/appdev.102/b14258/d_profil.htm#BJEFDBBC
Смежные вопросы
- 1. Уменьшить время выполнения хранимой процедуры Oracle
- 2. время выполнения хранимой процедуры
- 3. Ошибка выполнения хранимой процедуры Oracle
- 4. Время выполнения хранимой процедуры различно
- 5. Поиск хранимой процедуры Oracle
- 6. Время выполнения хранимой процедуры измерения SQL
- 7. SQL время выполнения хранимой процедуры тайна
- 8. Оракул для каждой хранимой процедуры время выполнения
- 9. Mysql хранимой процедуры во время выполнения
- 10. Настройка параметров во время выполнения хранимой процедуры
- 11. Получение ошибки во время выполнения хранимой процедуры
- 12. Отладка хранимой процедуры в Oracle
- 13. Проверить время хранимой процедуры
- 14. Производительность хранимой процедуры Oracle
- 15. Oracle: ошибка хранимой процедуры
- 16. Имя хранимой процедуры Oracle
- 17. Понимание Oracle хранимой процедуры
- 18. Oracle хранимой процедуры проблемы
- 19. Охрана хранимой процедуры Oracle
- 20. хранимой процедуры в Oracle PL/SQL
- 21. высчитывает время выполнения до выполнения хранимой процедуры в C#
- 22. Проблема выполнения хранимой процедуры
- 23. Сохранение выполнения хранимой процедуры
- 24. Вызов хранимой процедуры в Oracle
- 25. Настройка хранимой процедуры в Oracle
- 26. Написание хранимой процедуры в oracle
- 27. Получить BLOB из хранимой процедуры в Oracle
- 28. Файл журнала хранимой процедуры Oracle
- 29. План выполнения хранимой процедуры Oracle в случае IF ELSE
- 30. ClassCastException после выполнения Хранимой процедуры в java