El diccionario de datos es una parte fundamental de la base de datos Oracle. Está formado por tablas, vistas y packages a los que se puede acceder para obtener información. Las tablas se crean automáticamente durante la instalación y permiten saber:
- Estructura lógica y física de la DB
- Los usuarios de la DB
- Restricciones de integridad sobre las tablas de la DB
- Espacio asociado a cada objeto en la DB y la cantidad que se está utilizando por los distintos objetos creados por los usuarios de la DB
El usuario SYS es el dueño del DD y tiene todos los permisos sobre cualquier objeto de la DB (también los de cualquier usuario). Componentes de la DD:
- Tablas base: Una serie de tablas a las que el servidor de datos accede cada vez que se procesa una instrucción DDL de SQL o en algunos comandos DML.
- Vistas estáticas: Se crean durante la instalación del RDBMS y decodifican y resumen la información contenida en las tablas base. Durante la creación de estas vistas se generan sinónimos públicos para proveer el acceso a los usuarios del RDBMS. Estas vistas deben ser utilizadas para las labores de administración rutinarias que necesiten información específica sobre configuración y estado de la DB. Tienen el nombre de estáticas porque no mantienen información relacionada con las sesiones. Se dividen en 3 categorías:
- Vistas con prefijo USER: Puede utilizarlas cualquier usuario de laDB y se refieren a objetos poseídos por dicho usuario.
Ej: Usuario dave ejecuta:
SELECT * FROM USER_TABLES;
Se desplegará toda la información de las tablas cuyo propietario seadave. - Vistas con prefijo ALL: Evidente, las podrá usar cualquier usuario y además añaden la columna OWNER al resto de información. Con estas vistas se puede tener acceso a la información de los objetos que el usuario es dueño además de los objetos públicos y los que el usuario tiene acceso (por pertenecer a un grupo de seguridad o poseer ciertos privilegios).
- Vistas con prefijo DBA: Dan información sobre todos los objetos de la DB. Usualmente también tienen la columna OWNER. Sólo las puede utilizar el administrador o usuarios con privilegio SELECT ANY TABLE o pertenezca a un rol que incluya el privilegio.
- Vistas con prefijo USER: Puede utilizarlas cualquier usuario de laDB y se refieren a objetos poseídos por dicho usuario.
- Vistas dinámicas (o performance views): Incluyen información sobre las condiciones actuales de operación del RDBMS. La mayor parte son creadas durante la instalación y algunas se crean específicamente para monitorear cierta actividad. Todas se identifican por el prefijo V$.
EJ: La vista dinámica V$_SESSION incluye información sobre las sesiones actuales y la vista V$SYSSTAT provee información estadística sobre elRDBMS. Para obtener información general sobre las vistas del diccionario de datos se podría utilizar esta consulta:
SELECT * FROM DICTIONARY WHERE table_name LIKE ´%indicador%´;
Por ejemplo, para ver todas las vistas relacionadas con tablas podríamos ejecutar:
SELECT * FROM DICTIONARY WHERE table_name LIKE ´%TABLE%´;
No hay comentarios:
Publicar un comentario