2011-10-12 13 views
11

Soy nuevo en Oracle. Necesito obtener los trabajos programados en mi base de datos.¿Cómo puedo enumerar las tareas programadas que se ejecutan en mi base de datos?

me preguntó

DBA_SCHEDULER_JOBS, 
DBA_SCHEDULER_SCHEDULES, DBA_SCHEDULER_PROGRAMS, 
DBA_SCHEDULER_JOB_CLASSES, DBA_JOBS. 

Pero Oracle emite el error

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

Cuando me preguntó ALL_JOBS y USER_JOBS no hay filas se recuperan. Por favor sugiérame qué tabla debería ver.

Respuesta

11

Las vistas de DBA están restringidas. Por lo tanto, no podrá consultarlos a menos que esté conectado como un DBA o un usuario con privilegios similares.

Las TODAS las vistas le muestran la información que puede ver. Normalmente, esos serían los trabajos que ha enviado, a menos que tenga privilegios adicionales.

Los privilegios que necesita están definidos en la Guía del administrador. Find out more.

Por lo tanto, o necesita una cuenta de DBA o necesita chatear con su equipo de DBA para obtener acceso a la información que necesita.

+10

Si prefiere no leer el manual: 'SELECT * FROM ALL_SCHEDULER_JOBS;'. –

1

Debido a que el SCHEDULER_ADMIN papel es un papel importante permitiendo un concesionario para ejecutar código como cualquier usuario, en su lugar debería considerar otorgar privilegios de sistema de Programador individuales. Los privilegios de objeto y sistema se otorgan utilizando la sintaxis de concesión SQL habitual. Un ejemplo es si el administrador de la base de datos emite la siguiente instrucción:

GRANT CREATE JOB TO scott;

Después de ejecutar esta instrucción, scott puede crear trabajos, programaciones o programas en su esquema.

copiado de http://docs.oracle.com/cd/B19306_01/server.102/b14231/schedadmin.htm#i1006239

Cuestiones relacionadas