Как я могу перечислить запланированные задания, выполняющиеся в моей базе данных? - PullRequest
12 голосов
/ 12 октября 2011

Я новичок в оракуле. Мне нужно получить запланированные задания в моей базе данных.

Я спросил

DBA_SCHEDULER_JOBS, 
DBA_SCHEDULER_SCHEDULES, DBA_SCHEDULER_PROGRAMS,
 DBA_SCHEDULER_JOB_CLASSES, DBA_JOBS.

Но Oracle выдает ошибку

"ORA-00942: table or view does not exist".

Когда я запрашивал ALL_JOBS и USER_JOBS, строки не извлекались. Пожалуйста, предложите мне, какую таблицу я должен увидеть.

Ответы [ 3 ]

12 голосов
/ 12 октября 2011

Представления DBA ограничены.Таким образом, вы не сможете запрашивать их, если вы не подключены как администратор БД или такой же привилегированный пользователь.

Все представления отображают информацию, которую вам разрешено видеть.Обычно это будут отправленные вами задания, если у вас нет дополнительных прав.

Необходимые вам права определены в Руководстве администратора. Узнать больше .

Итак, либо вам нужна учетная запись DBA, либо вам нужно поговорить с вашей командой DBA о получении доступа к необходимой информации.

3 голосов
/ 12 октября 2011

Я думаю, что вам нужна роль SCHEDULER_ADMIN для просмотра таблиц dba_scheduler (однако это также может предоставить вам права)

см .: http://download.oracle.com/docs/cd/B28359_01/server.111/b28310/schedadmin001.htm

2 голосов
/ 23 января 2015

Поскольку роль SCHEDULER_ADMIN является мощной ролью, позволяющей получателю выполнять код от имени любого пользователя , вам следует рассмотреть возможность предоставления отдельных системных привилегий Планировщика.Объектные и системные привилегии предоставляются с использованием обычного синтаксиса предоставления SQL.Например, если администратор базы данных выдает следующую инструкцию:

GRANT CREATE JOB TO scott;

После выполнения этой инструкции scott может создавать задания,расписания или программы в его схеме.

скопировано с http://docs.oracle.com/cd/B19306_01/server.102/b14231/schedadmin.htm#i1006239

...