Diccionario de datos

Solo disponible en BuenasTareas
  • Páginas : 11 (2589 palabras )
  • Descarga(s) : 0
  • Publicado : 18 de diciembre de 2011
Leer documento completo
Vista previa del texto
El diccionario de datos Oracle Diccionario de datos

Durante la creación, Oracle Server crea estructuras de objetos adicionales dentro de los datafiles llamadas Tablas del diccionario de datos y Tablas dinámicas de rendimiento. El diccionario de datos es un conjunto de tablas de sólo lectura y vistas que registran, verifican y proveen información sobre una base de datos.

Tablas Base
Tablasque almacenan información de la base de datos. Son los primeros objetos creados en cualquier base de datos Oracle. Son automáticamente creados cuando el Oracle Server ejecuta el script sql.bsq al momento de la creación.

Sólo el Servidor Oracle puede escribir sobre esas tablas. Los usuarios raramente acceden directamente a ellas porque mucha de la información almacenada está encriptada. Nuncautilizar comandos DML para modificar directamente información sobre tablas base, con la excepción de la tabla AUD$. Un ejemplo de tablas base son las IND$, las que contienen información de los índices de la base de datos.

Vistas del Diccionario de Datos

Son resúmenes de las tablas base que despliegan información útil sobre ellas. Para crear estas vistas del diccionario de datos, se debeejecutar el script catalog.sql con el usuario SYSTEM.

Contenido del Diccionario de Datos
El diccionario de datos provee información sobre:
Un diccionario de datos Oracle provee información tal como: Estructura física y lógica de la base de datos, Definiciones y asignación de espacio de objetos, Reglas de integridad, información de usuarios (roles, privilegios y auditoria).

Un diccionario dedatos contiene:
• Las definiciones de todos los esquemas de objetos en la base de datos (tablas, vistas, índices, clusters, sinónimos, secuencias, procedimientos, funciones, triggers, packages, triggers, etc)
• Cuánto espacio ha sido asignado a los objetos
• Valores por defectos para las columnas
• Información de reglas de integridad
• Nombre de usuarios Oracle
• Privilegios y roles que han sidoasignado a cada usuario
• Información de auditoría, tal como quién ha accesado o modificado objetos en la base de datos

¿Cómo es usado el Diccionario de Datos?

¿Cómo el Oracle Server usa el DD?

Datos en las tablas base del diccionario de datos son necesarios para el funcionamiento de Oracle Server. Solo Oracle puede escribir o modificar su información. Durante la operación de la base dedatos, Oracle necesita la información sobre los objetos existentes y que usuarios tienen acceso a ellos.

Oracle modifica el diccionario de datos continuamente para reflejar los cambios en las estructuras almacenadas en los datafiles (creación y/o modificación de tablas, índices, constraints, triggers, procedures, etc)

¿Cómo los usuarios y DBA pueden usar el DD?
Las vistas del diccionariode datos sirven para referencia a todos los usuarios de la base de datos. Algunas vistas están accesibles a todos los usuarios Oracle, otras solo están permitidas a usuarios con permiso de DBA.Categorías de vistas en un diccionario de datos.

El Diccionario de datos consiste básicamente de 3 conjuntos de vistas estáticas diferenciadas unas de otras por su SCOPE (alcance):

• DBA : Que esta entodos los esquemas
• ALL : Que el usuario puede accesar
• USER : Que están en el esquema del usuario
DBA_xxx
Todos los objetos en la base de datos
ALL_xxx
Objetos accesibles para el usuario conectado
USER_xxx
Objetos propiedad del usuario conectado

Vistas con prefijo DBA
Muestran información global de la base de datos. Son consultadas sólo por administradores de bases de datos.Cualquier usuario con privilegio de SELECT ANY TABLE puede consultar las vistas con prefijo DBA del diccionario de datos. Ejemplo:
1.- Consultar todos los objetos de una base de datos
SELECT owner, object_name, object_type FROM dba_objects;
2.- Consultar todos los objetos de tipo TRIGGER de una base de datos
SELECT owner, object_name, object_type FROM dba_objects WHERE object_type=‘TRIGGER’;
Vistas...
tracking img