viernes, diciembre 14, 2012

Oracle, error ORA-00942 en el acceso a tablas del diccionario

Hace más de 2 años, explicaba cómo habilitar las trazas de acceso en Oracle, y más tarde, cómo analizar cómodamente esas trazas.

El análisis de las trazas requería el acceso a una tabla del diccionario que se encuentra en el esquema SYS: tabla AUD$.

Lo lógico es que con el tiempo vayamos mejorando nuestro sistema e incorporemos trazas de otros sistemas diferentes. Así pues terminaremos creando un nuevo usuario Oracle que accederá a sus propios objetos, además de a la citada tabla SYS.AUD$.

Si hacemos algo así como SELECT * FROM SYS.AUD$ nos dará el siguiente error: "ORA-00942: table or view does not exist".

El problema se soluciona asignándole al nuevo usuario el privilegio del sistema:

GRANT SELECT ANY DICTIONARY TO "USUARIO"

Saludos.

No hay comentarios: