Está en la página 1de 36

ORACLE DBA

ADMINISTRACION DE BASE DE DATOS


Dictado por:
Ing. Carlos Alcal Helguero
Consultas: alcala@ucbcba.edu.bo
ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN


PABLO
GESTIN - 2005

ORACLE DBA
TEMA 1
INTRODUCCION A ORACLE DBA
http://otn.oracle.com/pls/db92/db92.homepage

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN


PABLO
GESTIN - 2005

INTRODUCCION A ORACLE DBA

Este manual est dirigido a usuarios inexpertos en la administracin de


Oracle y que se topan por primera vez con la necesidad de efectuar una
administracin bsica de la base de datos, movidos por el afn de
personalizarla segn los requerimientos del proyecto al que se vean
enfrentados.

La versin que se utilizar para efectos prcticos es la de Oracle 9i y el


conjunto de herramientas grficas de administracin al que se har mencin
en el presente curso corresponde al producto Oracle Enterprise Manager
OEM que se proporciona con el software.

Se asume que el lector posee conocimientos slidos de SQL y que ha


trabajado con bases de datos en el pasado y por lo tanto, est capacitado en
algunos conceptos y objetos propios de estos ambientes. De todas formas,
se recomienda revisar los manuales adjuntos para repasar algunos
conceptos que pudieran haberse olvidado.

Tambin es pertinente recomendar que cada vez que se trabaja con Oracle
es muy conveniente disponer de la ayuda en lnea del software,
principalmente de aquellos programas que ayuden a construir la sintaxis de
los comandos o los nombres de los objetos principales (tablas o vistas del
sistema), que se puedan olvidar con facilidad. Ejemplos de programas tiles
son OEM, PL/SQL Developer, TOAD o SQL Navigator, SQL*Plus, entre otros.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA


La Base de Datos

La base de datos de Oracle tiene una capa lgica y otra fsica. La capa fsica
consiste de archivos que residen en el disco y los componentes de la capa
lgica son estructuras que mapean los datos hacia estos componentes fsicos.

La Capa Fsica

Archivos fsicos que se encuentran en los discos, estos pueden ser de tres
tipos diferentes:
Uno o ms datafiles

Dos o ms archivos redo log (de deshacer)

Los datafiles almacenan toda la informacin ingresada en una base de datos. Se


pueden tener slo uno o cientos de ellos. Muchos objetos (tablas, ndices) pueden
compartir varios datafiles. El nmero mximo de datafiles que pueden ser
configurados est limitado por el parmetro de sistema MAXDATAFILES.
Los archivos del tipo redo log almacenan informacin que se utiliza para la
recuperacin de una base de datos en caso de falla. Estos archivos almacenan la
historia de cambios efectuados sobre la base de datos y son particularmente tiles
cuando se necesita corroborar si los cambios que la base de datos ya ha
confirmado se han efectuado realmente en los datafiles.

Uno o ms control files

Estos archivos contienen informacin que se utiliza cuando se levanta una


instancia, tal como la informacin de dnde se encuentran ubicados los datafiles y
los archivos redo log. Estos archivos de control deben encontrarse siempre
protegidos.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

La Capa Lgica

La capa lgica de una base de datos consta de los siguientes elementos:


Uno o ms tablespaces

El esquema de la base de datos (schema), el cual consiste de objetos como tablas,


clusters, ndices, vistas, procedimientos almacenados, triggers, secuencias y otros.

Los Tablespaces y los Datafiles


Como se mencion, una base de datos se encuentra dividida en una o ms
piezas lgicas llamadas tablespaces, que son utilizados para separar la
informacin en grupos y as simplificar la administracin de los datos. Los
tablespaces pueden ocupar uno o ms datafiles. Si se decide que utilice
varios datafiles, el administrador del sistema puede gestionar que stos
queden localizados en discos diferentes, lo que aumentar el rendimiento
del sistema, principalmente por la mejora en la distribucin de la carga de
entrada / salida.
En la figura siguiente se aprecia la diferencia entre estos tres conceptos.
Una base de datos de ejemplo contiene tres tablespaces lgicos (parte
superior de la figura) que utiliza para almacenar informacin del sistema, de
los datos del usuario y de los ndices de las tablas. Asimismo, existen los
espacios fsicos (datafiles) que guardan esta informacin en los diferentes
discos disponibles y que se sealan en la parte inferior del dibujo.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Segmentos, Extensiones y Bloques


Dentro de los tablespaces y datafiles, el espacio utilizado para almacenar
datos es controlado por el uso de ciertas estructuras; stas son las
siguientes:
Bloques:

Extensiones:

Un bloque es la unidad de almacenamiento ms pequea en una base de datos


Oracle. Contiene una pequea porcin de informacin (header) referente al bloque
en s y el resto a los datos que guarda. Generalmente, un bloque de datos ocupar
aprox. 2 KB de espacio fsico en el disco (asignacin tpica).
Es un grupo de bloques de datos. Se establecen en un tamao fijo y crecen a
medida que van almacenando ms datos. Tambin se pueden redimensionar para
aprovechar mejor el espacio de almacenamiento.

Segmentos:

Es un grupo de extensiones utilizados para almacenar un tipo particular de datos.


Existen 4 tipos de segmentos: datos, ndices, rollback y temporales.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

El Esquema de la base de datos

Un esquema es una coleccin de objetos lgicos, utilizados para organizar de manera


ms comprensible la informacin y conocidos como objetos del esquema. Una breve
descripcin de los objetos que lo componen es la siguiente:

Tabla:
Es la unidad lgica bsica de almacenamiento. Contiene filas y columnas (como una
matriz) y se identifica por un nombre. Las columnas tambin tienen un nombre y deben
especificar un tipo de datos. Una tabla se guarda dentro de un tablespace (o varios, en
el caso de las tablas particionadas).

Cluster:
Un cluster es un grupo de tablas almacenadas en conjunto fsicamente como una sola
tabla que comparten una columna en comn. Si a menudo se necesita recuperar datos
de dos o ms tablas basado en un valor de la columna que tienen en comn, entonces
es ms eficiente organizarlas como un cluster, ya que la informacin podr ser
recuperada en una menor cantidad de operaciones de lectura realizadas sobre el disco.
ndice:
Un ndice es una estructura creada para ayudar a recuperar datos de una manera ms
rpida y eficiente. Un ndice se crea sobre una o varias columnas de una misma tabla.
De esta manera, cuando se solicita recuperar datos de ella mediante alguna condicin
de bsqueda (clusula where de la sentencia), sta se puede acelerar si se dispone de
algn ndice sobre las columnas-objetivo.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Vista:
Una vista implementa una seleccin de varias columnas de una o diferentes tablas. Una
vista no almacena datos; slo los presenta en forma dinmica. Se utilizan para
simplificar la visin del usuario sobre un conjunto de tablas, haciendo transparente para
l la forma de obtencin de los datos.
Procedimiento Almacenado:
Son programas que permiten independizar el manejo de datos desde una aplicacin y
efectuarla directamente desde el motor de base de datos, disminuyendo as el trfico de
informacin a travs de la red y mejorando el rendimiento de los procesos
implementados mediante estos programas.
Trigger(gatillo):
Un trigger es un procedimiento que se ejecuta en forma inmediata cuando ocurre un
evento especial. Estos eventos slo pueden ser la insercin, actualizacin o eliminacin
de datos de una tabla.
Secuencias:
El generador de secuencias de Oracle se utiliza para generar nmeros nicos y
utilizarlos, por ejemplo, como claves de tablas. La principal ventaja es que libera al
programador de obtener nmeros secuenciales que no se repitan con los que pueda
generar otro usuario en un instante determinado.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Vista:
Una vista implementa una seleccin de varias columnas de una o diferentes tablas. Una
vista no almacena datos; slo los presenta en forma dinmica. Se utilizan para
simplificar la visin del usuario sobre un conjunto de tablas, haciendo transparente para
l la forma de obtencin de los datos.
Procedimiento Almacenado:
Son programas que permiten independizar el manejo de datos desde una aplicacin y
efectuarla directamente desde el motor de base de datos, disminuyendo as el trfico de
informacin a travs de la red y mejorando el rendimiento de los procesos
implementados mediante estos programas.
Trigger(gatillo):
Un trigger es un procedimiento que se ejecuta en forma inmediata cuando ocurre un
evento especial. Estos eventos slo pueden ser la insercin, actualizacin o eliminacin
de datos de una tabla.
Secuencias:
El generador de secuencias de Oracle se utiliza para generar nmeros nicos y
utilizarlos, por ejemplo, como claves de tablas. La principal ventaja es que libera al
programador de obtener nmeros secuenciales que no se repitan con los que pueda
generar otro usuario en un instante determinado.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Arquitectura de Oracle
La Arquitectura general de Oracle consiste de varios procesos corriendo en la mquina
donde reside la instancia, ms los espacios de memoria dedicados a ejecutar procesos
especficos o al almacenaje de informacin de cada proceso y la base de datos fsica
propiamente tal, con sus archivos de control, de datos y de transacciones.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Instancia de Oracle
Una instancia de Oracle est conformada por varios procesos y espacios de memoria
compartida que son necesarios para acceder a la informacin contenida en la base de
datos. conformada por procesos del usuario que se ejecutan en el background de Oracle
y los espacios de memoria que comparten estos procesos.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Vista:
Una vista implementa una seleccin de varias columnas de una o diferentes tablas. Una
vista no almacena datos; slo los presenta en forma dinmica. Se utilizan para
simplificar la visin del usuario sobre un conjunto de tablas, haciendo transparente para
l la forma de obtencin de los datos.
Procedimiento Almacenado:
Son programas que permiten independizar el manejo de datos desde una aplicacin y
efectuarla directamente desde el motor de base de datos, disminuyendo as el trfico de
informacin a travs de la red y mejorando el rendimiento de los procesos
implementados mediante estos programas.
Trigger(gatillo):
Un trigger es un procedimiento que se ejecuta en forma inmediata cuando ocurre un
evento especial. Estos eventos slo pueden ser la insercin, actualizacin o eliminacin
de datos de una tabla.
Secuencias:
El generador de secuencias de Oracle se utiliza para generar nmeros nicos y
utilizarlos, por ejemplo, como claves de tablas. La principal ventaja es que libera al
programador de obtener nmeros secuenciales que no se repitan con los que pueda
generar otro usuario en un instante determinado.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

El rea Global del Sistema (SGA)

El SGA es un rea de memoria compartida que se utiliza para almacenar


informacin de control y de datos de la instancia. Se crea cuando la
instancia es levantada y se borra cuando sta se deja de usar (cuando se
hace shutdown). La informacin que se almacena en esta rea consiste de
los siguientes elementos, cada uno de ellos con un tamao fijo:

El buffer de cach (database buffer cache)


Almacena los bloques de datos utilizados recientemente (se hayan o no
confirmado sus cambios en el disco). Al utilizarse este buffer se reducen las
operaciones de entrada y salida y por esto se mejora el rendimiento.
El buffer de redo log: Guarda los cambios efectuados en la base de datos.
Estos buffers escriben en el archivo fsico de redo log tan rpido como se
pueda sin perder eficiencia. Este ltimo archivo se utiliza para recuperar la
base de datos ante eventuales fallas del sistema.

El rea shared pool: Esta sola rea almacena estructuras de memoria compartida,
tales como las reas de cdigo SQL compartido e informacin interna del
diccionario. Una cantidad insuficiente de espacio asignado a esta rea podra
redundar en problemas de rendimiento. En resumen, contiene las reas del cach
de biblioteca y del cach del diccionario de datos.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

El cach de biblioteca se utiliza para almacenar cdigo SQL compartido. Aqu se


manejan los rboles de parsing y el plan de ejecucin de las queries. Si varias
aplicaciones utilizan la misma sentencia SQL, esta rea compartida garantiza el
acceso por parte de cualquiera de ellas en cualquier instante.

El cach del diccionario de datos est conformado por un grupo de tablas y vistas
que se identifican la base de datos. La informacin que se almacena aqu guarda
relacin con la estructura lgica y fsica de la base de datos. El diccionario de
datos contiene informacin tal como los privilegios de los usuarios, restricciones de
integridad definidas para algunas tablas, nombres y tipos de datos de todas las
columnas y otra informacin acerca del espacio asignado y utilizado por los
objetos de un esquema.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Procesos de la Instancia

Segn lo que se advierte en la figura de la instancia, los procesos que se


implementan en una instancia de Oracle y su funcin principal son los siguientes:

DBWR (database writer): Es el responsable de la escritura en disco de toda la


informacin almacenada en los buffers de bloques que no se han actualizado.
LGWR (log writer): Es el responsable de escribir informacin desde el buffer de log
hacia el archivo redo log.
CKPT (checkpoint): Es el responsable de advertir al proceso DBWR de efectuar un
proceso de actualizacin en el disco de los datos mantenidos en memoria, incluyendo los
datafiles y control files (para registrar el checkpoint). Este proceso es opcional, si no
est presente, es el proceso LGWR quien asume la responsabilidad de la tarea.
PMON (process monitor): Su misin es monitorizar los procesos del servidor y tomar
acciones correctivas cuando alguno de ellos se interrumpe en forma abrupta, limpiando
la cach y liberando los posibles recursos que pudieran estar asignados en ese
momento. Tambin es responsable por el restablecimiento de aquel proceso que se ha
interrumpido bruscamente.
SMON (system monitor): Levanta una instancia cuando se le da la instruccin de
partida (al comienzo del trabajo, encontrndose previamente en shutdown). Enseguida
limpia los segmentos temporales y recupera las transacciones que pudieran haberse
interrumpido debido a una falla del sistema. Adems disminuye la fragmentacin del
sistema agrupando aquellas extensiones libres que existen dentro de la base de datos.
ARCH (archiver): La funcin de este proceso es la de respaldar la informacin
almacenada en los archivos redo log cuando stos se llenan. Este proceso est siempre
activo cuando se ha establecido el modo ARCHIVELOG. Si el sistema no est operando
en este modo se hace ms difcil recuperar el sistema sin problemas luego de una falla
general.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

El rea Global de Programas (PGA)

Esta rea de memoria contiene datos e informacin de control para los procesos que se
ejecutan en el servidor de Oracle (relacionados con la base de datos, por supuesto). El
tamao y contenido de la PGA depende de las opciones del servidor que se hayan
instalado.
Las Transacciones
El trmino transaccin describe a una unidad lgica de trabajo que est compuesta de
una o ms sentencias SQL, que deben terminar con una instruccin commit o rollback.
En ese instante, una nueva transaccin dar comienzo y estar activa hasta que se
ejecute alguno de esos dos comandos otra vez.
Cabe destacar que una transaccin no se considera confirmada hasta que sta se
termina de escribir en el archivo de redo log.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Tipos de Usuario

Los tipos de usuario y sus roles pueden variar segn el ambiente y la


organizacin de la empresa donde trabaje, en el caso del DBA por
ejemplo en una pequea empresa puede tener un Administrador de
Base de Datos encargado de administrar la base de datos para
desarrolladores y usuarios, en cambio una empresa grande puede
encontrar necesario dividir los roles de un DBA en un staff o grupo de
trabajo y en varias reas de especializacin. Entre los usuarios de la
base de datos encontramos:

Administradores de Base de Datos DBAs


Cada Base de Datos requiere por lo menos un administrador (DBA), en
muchos casos los sistemas de base de datos Oracle son muy grandes y
pueden tener muchos usuarios, por lo que normalmente hay un grupo
de DBAs que comparten la responsabilidad.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Responsabilidades del DBA


Las responsabilidades de un DBA incluyen las detalladas a continuacin:

Instalar y Actualizar el software de Oracle

Monitorear, asignar y planificar espacio de almacenamiento para


informacin actual y para requerimientos futuros.

Crear las estructuras primarias de almacenamiento (tablespaces),


normalmente en base al diseo previo por parte de los desarrolladores.

Crear los objetos primarios (tablas, vistas, indices), normalmente en base


al diseo previo por parte de los desarrolladores.

Modificar la estructura de la Base de Datos segn sea necesario de


informacin proporcionada por los desarrolladores.

Registrar usuarios y mantener la seguridad del sistema

Controlar y Monitorear el acceso de usuarios a recursos e informacin de


la base de datos

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Iniciar y Finalizar las instancias de Oracle

Optimizar la performance de la Base de Datos

Auditar el uso de la Base de Datos

Planificar el backup y recuperacin de la Base de Datos

Realizar Backups y restaurar la Base de Datos

Ser el punto de referencia cuando surjan problemas con la Base de


Datos o aplicaciones que acceden a ella

Dar soporte a usuarios

Asistir en el desarrollo de consultas slidas, y aplicaciones que trabajen


con el sistema de administracin de la base de datos

Mantenerse actualizado con la Base de Datos, Sistema Operativo, y


Tecnologa de Desarrollo de aplicaciones

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Recetario de Tareas del Administrador DBA


Las siguientes tareas presentan un acercamiento priorizado para
disear, implementar y mantener una Base de Datos Oracle:
Tarea 1. Evaluar el Hardware del Servidor de Base de Datos

Evaluar como Oracle y sus aplicaciones pueden usar de mejor


manera los recursos de computacin del servidor. Se encontrara la
siguiente informacin:

Cuantos discos duros hay disponibles para Oracle y sus Bases de


Datos

Cuantos discos magnticos (si hay), estn disponibles para Oracle.

Cuanta memoria RAM disponible hay para las instancias de Oracle


que corrern.
Tarea 2. Instalar el Software Oracle

Como Administrador de Base de Datos usted instalara Oracle


Database Server y las herramientas necesarias para acceder a la
Base de Datos.

Para requerimientos especficos de instalacin para un ambiente


ver:

Documentacin de instalacin de Oracle para el sistema operativo


Guas de instalacin adjuntas con las herramientas Oracle.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Tarea 3. Planificar la Base de Datos

Como Administrador de la Base de Datos debe planificar:

La estructura lgica de almacenamiento de la Base de Datos

El diseo global de la Base de Datos

Una estrategia de Backup para la Base de Datos

Es importante planificar la estructura lgica de la Base de


Datos, pues eso afectara la eficiencia del sistema y las
operaciones en la Base de Datos, por ejemplo antes de crear
un tablespace es necesario saber de cuantos datafiles estar
compuesto, que tipo de informacin estar contenido en cada
tablespace, y en que drives de disco estarn fisicamente
guardados los datafiles.

Tarea 4. Crear y Abrir la Base de Datos

Una vez completada la etapa de planificacin y diseo de la


Base de Datos, esta se puede crear y abrir para su uso normal.
Se puede crear una Base de Datos al instalar Oracle, o se
pueden usar scripts propios para su creacin.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Tarea 5. Realizar Backup de la Base de Datos

Tarea 6. Registrar usuarios del sistema

Despus de haber creado la estructura de la Base de Datos, se debe


ejecutar la estrategia planificada para backup de la Base de Datos,
crear archivos adicionales de Log Redo (rehacer), realizar el primer
backup de la base de datos completa y programar intervalos regulares
para ejecutar backups de la base de datos.

Despus de haber realizado las copias de respaldo de la estructura


completa de la Base de Datos, se pueden enrolar o registrar a los
usuarios de la Base de Datos, en concordancia con las polticas crear
roles apropiados y conceder estos roles a los usuarios.

Tarea 7. Implementar el diseo de la Base de Datos

Ya creada la Base de Datos e iniciada y registrados los usuarios del


sistema, se puede implementar la estructura lgica planeada creando
los tablespaces necesarios, una vez hecho esto se pueden crear los
objetos de la Base de Datos.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Tarea 8. Realizar Backup de la Base de Datos en total


funcionamiento

Ya que la Base de Datos esta completamente implementada (incluso


contener datos iniciales), realizar una segunda copia de respaldo, es
decir, en adicin a la programacin regular de backups del sistema, el
administrador siempre debera realizar un BACKUP COMPLETO, antes y
despus de realizar cambios en la estructura de la Base de Datos.

Tarea 9. Optimizar el funcionamiento de la Base de Datos

Optimizar la performance de la Base de Datos es una de las


responsabilidades continuas del DBA, en adicin Oracle provee de una
caracterstica de administracin de recursos de la Base de Datos que
permite controlar la asignacin de recursos a los varios grupos de
usuarios existentes.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Seguridad y Privilegios de Administrador


Para realizar tareas de administracin se necesita tener privilegios
extra en ambos el sistema de Base de Datos como en el Sistema
Operativo del servidor en donde funciona la Base de Datos. El
acceso a esta cuenta debe estar muy bien controlado.
Cuenta de Administrador de Base de Datos del Sistema
Operativo

La cuenta de administrador del sistema operativo debe ser aquella que


tenga los privilegios necesarios para ejecutar comandos de sistema,
esto dependiendo del sistema operativo, en muchos casos es necesaria
la cuenta de administrador del sistema para poder ejecutar tareas como
instalacin de Oracle, iniciar o terminar servicios.

Nombres de Usuario del Administrador de Base de Datos


Automticamente al crear una base de datos se crean dos usuarios
que tienen el rol de DBA, estas dos cuentas son:

SYS
SYSTEM

(sin password de inicio)


(password: MANAGER)

NOTA: Los passwords se pueden modificar al momento de la


instalacin de la base de datos de Oracle o despus por medio de
SQL*Plus.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Usuario SYS

Usuario SYSTEM

De igual manera cuando se crea una base de Datos el usuario SYSTEM es


creado automticamente y se le concede el rol DBA. El usuario SYSTEM es
usado para crear tablas adicionales y vistas que muestran informacin
administrativa, igualmente no se deben crear en este esquema tablas de
inters personal para usuarios.

Autenticacin del Administrador de Base De Datos

Cuando se crea una base de Datos el usuario SYS es creado automticamente


y se le concede el rol DBA. Todas las tablas bsicas y vistas para el diccionario
de datos de la base de datos estn guardadas en el esquema SYS, estas son
esenciales para la operacin de Oracle, para mantener la integridad este
esquema es solo manejado por Oracle y no debe ser manipulado por ningn
usuario o administrador de Base de Datos, nadie debe crear tablas en este
esquema. El administrador debe asegurar que los usuarios de la Base de
Datos jams puedan conectarse usando el usuario SYS.

Como DBA se realiza tareas frecuentes como iniciar o finalizar una base de
datos, puesto que solo el DBA debera realizar estas tareas que el
administrador necesita un ambiente seguro de autenticacin de usuario

Privilegios Administrativos

Los privilegios que son requeridos para realizar operaciones bsicas con la
base de datos son concedidos mediante dos privilegios especiales de sistema,
SYSDBA y SYSOPER, el administrador debe tener uno de estos privilegios
dependiendo de las tareas que debe realizar.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

SYSDBA Y SYSOPER

La siguiente tabla muestra las operaciones permitidas y autorizadas por


los privilegios de sistema SYSDBA y SYSOPER:

SYSDBA

Realizar operaciones de STARTUP y/o SHUTDOWN

ALTER DATABASE: abrir, montar, backup, o cambiar el character set

CREATE DATABASE

CREATE SPFILE

ARCHIVELOG y RECOVERY

Incluye privilegio RESTRICTED SESSION


Este privilegio permite efectivamente conectarse como usuario SYS

SYSOPER

Realizar operaciones de STARTUP y/o SHUTDOWN

ALTER DATABASE: OPEN / MOUNT / BACKUP

CREATE DATABASE

CREATE SPFILE

ARCHIVELOG y RECOVERY

Incluye privilegio RESTRICTED SESSION


La manera en como se autoriza a usar estos privilegios depende en el
mtodo de autentificacin del usuario.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Cuando se conecta con los privilegios SYSDBA o SYSOPER usando un


nombre de usuario y password, se conecta usando un esquema por
defecto, no el esquema que esta generalmente asociado con el usuario.
Para SYSDBA el esquema es SYS, para SYSOPER el esquema es PUBLIC

Ejemplo con SQL*Plus


Conexin con privilegios administrativos
Este ejemplo muestra como un usuario es asignado con otro esquema
(SYS) cuando se conecta con el privilegio SYSDBA.
Asumiendo que el usuario scott ha realizado lo siguiente:
CONNECT scott/tiger
CREATE TABLE scott_test(name VARCHAR2(20));

Luego el usuario scott realiza lo siguiente:


CONNECT scott/tiger AS SYSDBA
SELECT * FROM scott_test;

El usuario recibe un error de que scott_test no existe, esto es porque


scott ahora referencia el esquema SYS por defecto, la tabla fue creada en
el esquema scott.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Autenticacin usando el SO
Un usuario puede ser autenticado, habilitado como usuario
administrativo y conectarse a una base de datos local, o conectarse a
una base de datos remota por conexin segura, ejecutando uno de los
siguiente comandos SQL *Plus: (conectarse como administrador NT)
CONNECT / AS SYSDBA
CONNECT / AS SYSOPER

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Autenticacin usando password file


Para habilitar la autenticacin de un usuario administrativo usando el mtodo
de archivo password, se deben realizar los siguientes pasos:

Crear una cuenta de SO para el usuario


Si no esta creada todava usar la utilidad ORAPWD para crear el archivo de
password:

C:\oracle\oraucb\bin\ORAPWD FILE=filename PASSWORD=password


ENTRIES=max_users

Establecer el parmetro de inicio REMOTE_LOGIN_PASSWORDFILE en


EXCLUSIVE (archivo: $ORACLE_HOME/admin/$SID/pfile/init.ora)
Conectarse a la Base de Datos como el usuario SYS (u otro usuario con
privilegios administrativos)
Si el usuario no existe todava crearlo (scott es un usuario de pruebas que
viene predefinido en Oracle) y luego conceder el privilegio de SYSDBA o
SYSOPER :

GRANT SYSDBA to scott;

Este comando adiciona al usuario scott al archivo de password, de esta


manera ya esta habilitado para conectarse como SYSDBA.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Conectarse usando autenticacin de archivo password


Los usuarios pueden autenticarse a una base de datos remota o local,
usando el comando CONNECT de SQL PLUS, se deben conectar a la BD
usando sus nombres de usuario y password, aumentando la clausula AS
SYSDBA o AS SYSOPER, por lo tanto el usuario scott puede conectarse de la
siguiente manera:
CONNECT scott/tiger AS SYSDBA;

Sin embargo como el usuario no tiene concedido el privilegio de SYSOPER, si


intenta conectarse con el siguiente comando:
CONNECT scott/tiger as SYSOPER;

SQL Plus le mostrara un error :


ERROR:
ORA-01031: insufficient privileges

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

ADMINISTRACION DE ARCHIVOS DE PASSWORD


A continuacin se vern los tpicos referentes a la administracin y mantenimiento del
archivo de password:
Usando ORAPWD
Cuando se ejecuta la herramienta sin ningn parmetro esta nos muestra un men de
opciones disponibles de la siguiente manera:
orapwd
Usage: orapwd file=<fname> password=<password> entries=<users>
where
file - name of password file (mand),
password - password for SYS (mand),
entries - maximum number of distinct DBAs and OPERs (opt),
There are no spaces around the equal-to (=) character.

A continuacin se explican los parmetros:

FILE

Este parmetro establece el nombre del archivo de password a usar, se debe especificar la
completa direccin del archivo. El contenido del archivo se encrypta y el archivo no se puede
leer directamente.

PASSWORD

Este parmetro establece el password del usuario SYS, si se utiliza las declaraciones ALTER
USER para cambiar el password del usuario SYS, despus de conectarse a la BD, ambos el
password guardado en el diccionario de datos y el guardado en el archivo de password se
actualizan.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

ENTRIES

Este parmetro fija la cantidad de entradas o registros que se requiere que tenga el archivo
de password, que corresponde a la cantidad de distintos usuarios permitidos de conectarse
a la BD como SYSDBA o SYSOPER.
Los registros se pueden usar segn se vayan adicionando o eliminando registros de
usuarios.

Establecer REMOTE_LOGIN_PASSWORDFILE
En adicin a crear el archivo de password, se debe establecer el parmetro de
inicio REMOTE_LOGIN_PASSWORDFILE al valor apropiado, los valores permitidos
son los siguientes:

NONE
Establecer este parmetro en NONE causa que Oracle se comporte como si no existiera el
archivo, por lo tanto no se permiten conexiones privilegiadas sobre conexiones no-seguras,
este es el valor por defecto.
EXCLUSIVE
Un archivo de password EXLUSIVE puede ser utilizado por solo una BD, solo un archivo
exclusivo puede contener usuarios diferentes al SYS, esto permite que se pueda conceder
privilegios de SYSDBA o SYSOPER a usuarios individuales y pueden conectarse como ellos
mismos.
SHARED
Un archivo de password SHARED puede ser utilizado por mltiples BDs, sin embargo el
nico usuario reconocido por un archivo de password SHARED es el SYS, no se pueden
adicionar usuario a este tipo de archivo, los usuarios que quieran conectarse con privilegios
de SYSDBA o SYSOPER deben conectare usando el mismo usuario SYS/password, esta
opcin es til cuando el sistema tiene un solo administrador DBA para mltiples BDs.

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

INTRODUCCION A ORACLE DBA

Bloquear y Desbloquear cuentas


Algunas cuentas vienen bloqueadas por defecto se debe usar la
expresin ALTER para desbloquear a los usuarios. Por ejemplo:
ALTER USER scott ACCOUNT UNLOCK;

Otorgar y Revocar privilegios de SYSDBA Y SYSOPER


Si el servidor esta usando un archivo de password EXCLUSIVE, se debe
usar la expresin GRANT para otorgar los privilegios de SYSDBA y
SYSOPER, como se muestra en el siguiente ejemplo:
GRANT SYSDBA TO scott;

Se debe usar la expresin REVOKE, para revocar los privilegios del


usuario como se muestra a continuacin:
REVOKE SYSDBA FROM scott;

ORACLE DBA - ADMINISTRACION BASE DE DATOS

UNIVERSIDAD CATOLICA BOLIVIANA SAN PABLO GESTIN

También podría gustarte