Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Instructor : Versin :
SISTEMA GESTOR DE BASE DE DATOS (SGBD) ORACLE Est concebido con el fin de manejar grandes cantidades de informacin, adems de admitir conexiones concurrentes de multitud de usuarios (entornos multi-usuario) hacia los mismos datos. Oracle aporta un SGBD que estar ubicado en un hardware especfico y bajo un sistema operativo determinado. La eleccin del entorno de trabajo (hardware, S.O. y tipologa de la estructura cliente/servidor) ser una decisin que estar acorde con las necesidades del propio sistema de informacin.
Esta persona deber tener un alto conocimiento de todo el sistema que envuelve al SGBD.
Sobre este recae una alta responsabilidad, debido a las graves repercusiones que puede traer una mala gestin de la informacin.
ESTRUCTURA GLOBAL
ARCHIVO INIT.ORA
Archivo de inicializacin de valores para el arranque de la instancia y para el establecimiento de configuraciones Oracle. Se especifican parmetros predeterminados con el valor que se desee, con el fin de optimizar los rendimientos o adecuar los recursos. Ser donde se establezcan todos los parmetros para que Oracle trabaje de una u otra forma. Estos archivos son independientes por instancia, es decir, habr tantos archivos de configuracin como instancias activas en el sistema de informacin.
ARCHIVOS DE CONTROL
Conjunto de archivos, de tamao reducido y estable, encargados de mantener la consistencia del resto de los archivos de la base de datos. Mantendrn informacin como : Nombre de la Base de Datos
SENTENCIAS COMMIT
Es el punto de decisin de la transaccin, indicando que los cambios hechos sobre la base de datos son validados y realizados.
Se trata de un punto sin retorno para una transaccin. Cuando se produce un Commit, ste provoca una escritura en los archivos histricos (redo log files), con el objetivo de que quede grabada la decisin del Commit.
Los datos nuevos no tienen por qu ser escritos en disco de forma inmediata. En realidad, permanecen en memoria hasta que sean limpiados por falta de espacio, se produzca un Checkpoint o entren en los timeouts de limpieza de memoria
SEGMENTOS DE ROLLBACK
Dan la posibilidad a la transaccin de no hacer Commit sino Rollback. Esto quiere decir que, mientras que no se realice un commit, el resto de las transacciones debern ver los datos anteriores al comienzo de la misma. Para ello, en los segmentos de rollback se guarda el valor anterior de los datos modificados por una transaccin para la consistencia en lectura en entornos multi-usuario.
INSTANCIA
Es el motor de Oracle, es un conjunto de componentes bsicos necesarios para el funcionamiento y arranque del SGBD. Est compuesta por : Estructura de Memoria
Archivos de configuracin ( INIT.ORA ) : Archivos de configuracin donde se establecen todos los parmetros para que Oracle trabaje de una u otra forma
Procesos Background : Serie de procesos encargados de mantener, manejar y controlar todo el SGBD.
ESTRUCTURA DE MEMORIA
Se almacenan los ejecutables del software Oracle y todo el sistema necesario para el tratamiento del SGBD. La filosofa de Oracle es la de albergar la mxima cantidad de informacin en memoria con el objeto de acelerar el tratamiento de los datos. La estructura de Oracle en memoria se divide en : SGA (System Global Area) PGA (Program Global Area) rea para ejecutables de Oracle
Se asigna cuando se crea un proceso Se libera cuando se termina un proceso Slo la utiliza un proceso Consta de:
reas privadas para sentencias SQL. reas de ordenacin de sentencias.
PROCESOS EN BACKGROUND
DBWR ( Database Writer ) : Encargado de escribir en los archivos de la base de datos todos los buffers de datos que han sido modificados en memoria por operaciones Update, Delete, o Insert. LGWR ( Log Writer ) : Encargado de escribir en los archivos histricos de la base de datos (Redo Log Files) la informacin contenida en los redo log buffers. SMON ( System MONitor ) : Encargado de tratar las recuperaciones en caso de fallo cuando se arranca el gestor. PMON ( Process MONitor) : Trata las recuperaciones en caso de fallo en algn proceso de usuario.
No hay ningn buffer libre Tablespace OFFLINE Tablespace READ ONLY Tabla DROP o TRUNCATE
En la validacin Si se llena a un tercio de su capacidad Si hay 1 MB de redo Cada tres segundos Antes de que escriba DBWR
DICCIONARIO DE DATOS
Each Oracle database has a data dictionary. AnOracle data dictionary is a set of tables and views that are used as a readonly reference about the database. For example, a data dictionary stores information about both the logical and physical structure of the database. A data dictionary also stores the following information:
The valid users of an Oracle database Information about integrity constraints defined for tables in the database The amount of space allocated for a schema object and how much of it is in use
A data dictionary is created when a database is created. To accurately reflect the status of the database at all times, the data dictionary is automatically updated by Oracle in response to specific actions, such as when the structure of the database is altered.
CREACION DE USUARIOS
En la creacin de usuarios se piden los siguientes requisitos:
1. Nombre 2. Password 3. Profile 4. Default- TableSpace 5. Temporary- Tablespace 6. Roles 7. System privilegies 8. Quotas 9. Privilegios sobre objetos
4- Default TableSpace: aqu se debe seleccionar el tableSpace donde se crean los objetos del usuario.
5- Tempory TableSpace: generalmente se coloca el TableSpace temporal de la creacin de la base de datos, pero puede usarse cualquiera. Hay que tener en cuenta que aqu se hacen las consultas y ordenaciones de este usuario.
7- System Privilegios (privilegios del sistema): estos estn asignados bsicamente al tratamiento de objetos como crear tablas, crear vistas, etc. Cabe destacar que la mayora de estos privilegios se encuentran en los roles del sistema. 8- Quotas: se le indica al usuario el espacio en Kb o Mb que podr manipular, se puede indicar un tamao especifico o ilimitado, por defecto no puede manipularlo. No solo se puede asignar espacio a sus tablespace sino que a otros que no le pertenezcan. 9- Privilegios sobre objetos: aqu se especifican los privilegios sobre objetos de otros usuarios. Se debe conectar con el usuario dueo del objeto y darle el privilegio al usuario que desee manipular los objetos. Por ejemplo: GRANT SELECT, UPDATE ON JLB.CLINETES TO JMR
CREACION DE OBJETOS
Una vez creada una base de datos y un usuario cualquiera, puedo seguir al paso siguiente que es la creacin de objetos para dicho usuario. La creacin de objetos esta ntimamente ligada a los usuarios de la Base de Datos, dichos usuarios se dice que dichos usuarios tienen un esquema de trabajo. Los objetos de Oracle son: Tablas Vistas Indices Sinnimos Link de Base de Datos Procedimientos Funciones Disparadores (triggers) Paquetes de procedimientos y funciones
CREACION DE TABLAS
Para la creacin de tablas se deben especificar:
Nombre de la Base de Datos: la tabla habr de pertenecer a una BD determinada Nombre de la Table: identificacin de la misma. Table Space: se indica en que table space habr de crearse la tabla Campos: un listado de los campos que compondrn la tabla y estos campos debern indicar: Nombre: nombre del campo Tipo: el tipo de datos que almacenara el campo (numrico, char, varchar2, date, raw, long raw, long) Tamao: longitud expresada en caracteres que habrn de ocupar los datos almacenados en el campo Null o Not Null: se indica si el campo puede contener valores null o no Valor por defecto
Esta sentencia crea una tabla para el usuario JLB, llamada ventas, donde se indican los campos con sus tipos y longitud, el espacio fsico que habr de ocupar y las particiones. Las particiones se hacen tomando como criterio de divisin el campo AO, y se la divide por aos desde el 2001 al 2003. Particionar la tabla de esta manera ayudara a acceder a registros de un ao determinado, agilizando los procesos de usuario.
RENOMBRAR TABLA
Para cambiar el nombre de una tabla utilizamos el comando RENAME, el cual tiene la sintaxis: RENAME NombreTabla TO NuevoNombreTabla; Por ejemplo: Rename Ciudades TO CiudadesChile;
BORRAR TABLA
Para borrar una tabla utilizaremos el comando DROP TABLE, el cual tiene la sintaxis: DROP TABLE NombreTabla; Por ejemplo: DROP TABLE CiudadesChile;