You are on page 1of 437

Administracin de la Base de Datos

Oracle9i: Conceptos Bsicos I


Presentacin Electrnica

D11321CS20
Edicin 2.0
Diciembre 2002
D37535

Autor Copyright Oracle Corporation, 2002. Todos los derechos reservados.

Marie St. Gelais Esta documentacin contiene informacin propiedad de Oracle Corporation; se suministra bajo los
trminos de un contrato de licencia que contiene restricciones de uso y de revelacin y est tambin
protegida por la legislacin de derechos de autor. Queda prohibida la ingeniera reversa. Si esta
Revisores Tcnicos documentacin se entrega a una agencia del Ministerio de Defensa del Gobierno de EE.UU., se
aplicar la siguiente advertencia de "Restricted Rights":
Louise Beijer
Restricted Rights Legend
Dairy Chan
Use, duplication or disclosure by the Government is subject to restrictions for commercial computer
Trevor Davies software and shall be deemed to be Restricted Rights software under Federal law, as set forth in
subparagraph (c)(1)(ii) of DFARS 252.227-7013, Rights in Technical Data and Computer Software
Donna Hamby
(October 1988).
Lutz Hartmann
Este material ni ninguna parte del mismo podr ser reproducido en cualquier forma o a travs de
Kuljit Jassar cualquier medio sin el expreso consentimiento por escrito de Oracle Corporation. La reproduccin es
una violacin de la ley de derechos de autor y puede tener consecuencias penales o civiles.
Patricia Mesa
Si esta documentacin se entrega a una agencia del Gobierno de EE.UU. no perteneciente al
Sabiha Miri Ministerio de Defensa, se aplicar la advertencia de "Restricted Rights" definida en FAR 52.227-14,
Howard Ostrow Rights in Data-General, incluido Alternate III (junio de 1987).

Caroline Pereda La informacin contenida en este documento est sujeta a cambio sin previo aviso. Si detecta
cualquier problema en la documentacin, le agradeceremos lo comunique por escrito a Education
Andreas Reinhardt Products, Oracle Corporation, 500 Oracle Parkway, Box SB-6, Redwood Shores, CA 94065. Oracle
Corporation no garantiza que este documento est exento de errores.
Ajai Sahni
SQL*Loader, SQL*Net, SQL*Plus, Net8, Oracle Call Interface, Oracle7, Oracle8, Oracle 8i,
Jaco Verheul
Developer/2000, Developer/2000 Forms, Designer/2000, Oracle Enterprise Manager, Oracle Parallel
Server, PL/SQL, Pro*C, Pro*C/C++ y Trusted Oracle son marcas comerciales o marcas comerciales
registradas de Oracle Corporation.
Editor
Todos los dems nombres de compaas y productos mencionados se utilizan a los exclusivos fines
Shane Mattimoe de su identificacin y pueden ser marcas comerciales de sus respectivos propietarios.
Introduccin

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos del Curso

Al finalizar este curso, debera estar capacitado para:


Identificar los diversos componentes de la
arquitectura de Oracle
Iniciar y cerrar una base de datos Oracle
Crear una base de datos operativa
Gestionar archivos de control de Oracle, archivos
redo log online, archivos de datos, tablespaces,
segmentos, extensiones y bloques
Gestionar usuarios, privilegios y recursos
Utilizar las funciones de soporte de globalizacin

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Oracle9i Enterprise Edition

Particionamiento Real Application


Clusters

Paquetes de Oracle Seguridad


Enterprise Manager Avanzada

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tareas del Administrador de la Base de Datos

Planificar y crear bases de datos


Gestionar la disponibilidad de la base de datos
Gestionar las estructuras fsicas y lgicas
Gestionar el almacenamiento basndose en el
diseo
Gestionar la seguridad
Administracin de la red
Copia de seguridad y recuperacin
Ajuste de la base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Componentes de la Arquitectura de Oracle

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Esbozar la arquitectura de Oracle y sus componentes
principales
Enumerar las estructuras implicadas en la conexin
de un usuario a una instancia Oracle

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Visin General de los Componentes Principales
Instancia
Proceso de
usuario SGA
Conjunto Compartido

Cach de Buffer de
Cach de Buffers
Biblioteca Redo Log
de Base de Datos
Proceso de Cach del Diccionario
servidor de Datos Conjunto Grande
Conjunto Java
PGA
PMON SMON DBWR LGWR CKPT Otros

Archivos Archivos Archivos


de datos de control Redo Log Archivos
Archivo de
log archivados
parmetros

Archivo de
contraseas
Base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Oracle Server

Oracle Server:
Oracle Server
Es un sistema de gestin de
bases de datos que
proporciona un enfoque
abierto, global e integrado de
la gestin de informacin
Est formado por una
instancia Oracle y una base
de datos Oracle

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Instancia Oracle

Una instancia Oracle:


Es un medio de acceso a una base de datos Oracle
Siempre abre una nica base de datos
Est formada por estructuras de procesos en
segundo plano y de memoria
Instancia
SGA
Conjunto Compartido
Estructuras de la
Cach de Buffer de memoria
Cach de Buffers
Biblioteca Redo Log
de Base de Datos
Cach del Diccionario
de Datos Conjunto Java Conjunto Grande
Estructuras de procesos
PMON SMON DBWR LGWR CKPT Otros en segundo plano

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Establecimiento de una Conexin
y Creacin de una Sesin
Conexin a una instancia Oracle:
Establecimiento de una conexin de usuario
Creacin de una sesin
Proceso de
Conexin servidor
establecida Sesin creada
Proceso de Oracle Server
usuario

Usuario de base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Base de Datos Oracle

Una base de datos Oracle:


Es un conjunto de datos que se trata como una unidad
Est formada por tres tipos de archivos

Base de Datos Oracle

Archivos Archivos Archivos


Archivo de de datos de control Archivos
Redo Log
parmetros log archivados

Archivo de
contraseas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Estructura Fsica

La estructura fsica incluye tres tipos de archivos:


Archivos de control
Archivos de datos
Archivos redo log online

Cabecera Archivos
de control
Archivos
de datos
Archivos (incluye
Redo Log el diccionario
Online de datos)

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Estructura de la Memoria

La estructura de la memoria de Oracle est formada


por dos reas de memoria llamadas:
SGA (rea Global del Sistema): Asignada al iniciar
la instancia y componente fundamental de una
instancia Oracle
PGA (rea Global de Programas): Asignada al
iniciar el proceso de servidor

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


rea Global del Sistema

El rea SGA est formada por varias estructuras de


la memoria:
Conjunto Compartido
Cach de Buffers de Base de Datos
Buffer de Redo Log
Otras estructuras (por ejemplo, gestin de bloqueos y
bloqueos internos, datos estadsticos)
Existen dos estructuras de la memoria adicionales
que se pueden configurar desde el SGA:
Conjunto Grande
Conjunto Java

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


rea Global del Sistema

Es dinmica
Tamao definido por el parmetro SGA_MAX_SIZE
Asignada y con seguimiento en grnulos por
componentes del SGA
Asignacin de memoria virtual contigua
El tamao de grnulo se basa en el valor de
SGA_MAX_SIZE total estimado

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Conjunto Compartido
Se utiliza para almacenar:
Las ltimas sentencias SQL ejecutadas
Las ltimas definiciones de datos utilizadas
Est formado por dos estructuras de memoria clave
relacionadas con el rendimiento:
Cach de Biblioteca
Cach del Diccionario de Datos
Tamao definido por el parmetro
SHARED_POOL_SIZE
Conjunto Compartido
Cach de
Biblioteca
Diccionario
ALTER SYSTEM SET de datos
SHARED_POOL_SIZE = 64M; Cach

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cach de Biblioteca

Almacena informacin acerca de las sentencias


SQL y PL/SQL utilizadas ms recientemente
Permite compartir las sentencias utilizadas con
mayor frecuencia
Lo gestiona un algoritmo LRU (utilizado menos
recientemente)
Est formado por dos estructuras:
rea de SQL compartido
rea de PL/SQL compartido
Tamao determinado por el tamao del conjunto
compartido

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cach del Diccionario de Datos

Conjunto de las definiciones utilizadas ms


recientemente en la base de datos
Incluye informacin acerca de archivos de base de
datos, tablas, ndices, columnas, usuarios,
privilegios y otros objetos de base de datos
Durante la fase de anlisis, el proceso de servidor
busca la informacin en el diccionario de datos para
resolver los nombres de objeto y validar el acceso
El almacenamiento de la informacin del diccionario
de datos en cach mejora el tiempo de respuesta de
las consultas y DML
Tamao determinado por el tamao del conjunto
compartido

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cach de Buffers de Base de Datos

Almacena copias de bloques de datos que se han


recuperado de archivos de datos
Permite grandes mejoras de rendimiento al obtener
y actualizar datos
Gestionado por un algoritmo LRU
DB_BLOCK_SIZE determina el tamao del bloque
primario

Cach de Buffers
de Base de Datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cach de Buffers de Base de Datos

Est formado por subcachs independientes:


DB_CACHE_SIZE
DB_KEEP_CACHE_SIZE
DB_RECYCLE_CACHE_SIZE
Se puede cambiar de tamao de forma dinmica
ALTER SYSTEM SET DB_CACHE_SIZE = 96M;

DB_CACHE_ADVICE se define con el fin de recoger


estadsticas para predecir el comportamiento de los
distintos tamaos de cach
Estadsticas mostradas por V$DB_CACHE_ADVICE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Buffer de Redo Log
Registra todos los cambios realizados en los
bloques de datos de la base de datos
Su finalidad principal es la recuperacin
Los cambios registrados dentro de ste se llaman
registros de redo
Los registros de redo contienen informacin que
permite reconstruir o rehacer cambios
Tamao definido por LOG_BUFFER

Buffer de
Redo Log

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Conjunto Grande

rea opcional de memoria en el SGA


Libera al conjunto compartido de su carga
Se utiliza para:
Memoria de sesin (UGA) para el servidor compartido
Procesos de servidor de E/S
Operaciones de copia de seguridad y recuperacin o RMAN
Buffers de mensajes de ejecucin en paralelo
PARALLEL_AUTOMATIC_TUNING se define como TRUE
No utiliza una lista LRU
Tamao definido por LARGE_POOL_SIZE
Se puede cambiar de tamao de forma dinmica

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Conjunto Java

Requisitos de anlisis de servicios para comandos Java


Es necesario si se instala y se utiliza Java
Tamao definido por el parmetro JAVA_POOL_SIZE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


rea Global de Programas

Memoria reservada para cada


proceso de usuario que se conecte PGA
a una base de datos Oracle Proceso de
servidor
Se asigna cuando se crea un
proceso
Se libera cuando se termina un Proceso de
proceso usuario
Slo la utiliza un proceso

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Estructura de Procesos

Oracle se beneficia de varios tipos de procesos:


Procesos de usuario: Se inician cuando un usuario de
base de datos solicita una conexin a Oracle Server
Procesos de servidor: Se conectan a la instancia Oracle
y se inician cuando un usuario establece una sesin
Procesos en segundo plano: Se inician al iniciar una
instancia Oracle

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Procesos de Usuario

Programa que solicita interaccin con Oracle Server


Debe establecer primero una conexin
No interacta directamente con Oracle Server

Proceso de
servidor
Proceso de
usuario
Conexin
establecida

Usuario de base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Procesos de Servidor

Programas que interactan directamente con Oracle Server


Cumplen las llamadas generadas y devuelven resultados
Pueden ser un servidor dedicado o compartido

Proceso de
Conexin servidor
establecida Sesin creada
Proceso de Oracle Server
usuario

Usuario de base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Procesos en Segundo Plano

Mantienen y fuerzan las relaciones entre las estructuras


fsicas y de memoria:
Procesos en segundo plano obligatorios:
DBWn PMON CKPT
LGWR SMON
Procesos en segundo plano opcionales:
ARCn LMDn QMNn
CJQ0 LMON RECO
Dnnn LMS Snnn
LCKn Pnnn

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


DBWn (Escritor de Base de Datos)

DBWn escribe si:


Instancia
Se produce un punto de
SGA control
Cach de Los buffers sucios
Buffers de
Base de Datos alcanzan el umbral
No hay ningn buffer libre
Se produce un timeout
DBWn
Se realiza un solicitud de
sondeo RAC
Tablespace OFFLINE
Archivos Archivos Archivos Tablespace READ ONLY
de datos de control Redo Log
Tabla DROP o TRUNCATE
Tablespace BEGIN
Base de datos BACKUP

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


LGWR (Escritura de Logs)

Instancia LGWR escribe:


SGA En la validacin
Buffer de
Si se llena a un tercio
Redo Log de su capacidad
Si hay 1 MB de redo
DBWn LGWR Cada tres segundos
Antes de que escriba
DBWn
Archivos Archivos Archivos
de datos de control Redo Log

Base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


SMON (Monitor del Sistema)
Instancia Responsabilidades:
SGA
Recuperacin de instancias
Aplica los cambios
pendientes en los archivos
redo log online
SMON Abre la base de datos para
que acceda el usuario
Deshace las transacciones
Archivos Archivos Archivos no validadas
de datos de control Redo Log
Fusiona el espacio libre
Libera los segmentos
Base de datos temporales

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


PMON (Monitor de Procesos)
Instancia Hace una limpieza cuando
SGA los procesos han fallado:
Haciendo un rollback en
las transacciones
Liberando los bloqueos
PMON
Liberando otros
recursos
Reiniciando
distribuidores
rea PGA interrumpidos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


CKPT (Punto de Control)
Instancia
SGA
Responsable de:
Sealar a DBWn en los
puntos de control
Actualizar las cabeceras
de archivos de datos con
DBWn LGWR CKPT
informacin del punto de
control
Actualizar los archivos de
Archivos Archivos Archivos control con informacin
de datos de control Redo Log del punto de control

Base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


ARCn (Archiver)

Proceso opcional en segundo plano


Archiva automticamente archivos redo log online
si est definido el modo
ARCHIVELOG
Protege el registro contra todos los cambios
realizados en la base de datos

ARCn Archivos
Archivos Archivos Archivos redo log
de datos de control Redo Log archivados

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Estructura Lgica

Establece el modo de uso del espacio fsico de una


base de datos
Jerarqua formada por tablespaces, segmentos,
extensiones y bloques
Tablespace
Archivo de datos
Segmento Segmento

Extensin Bloques

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Procesamiento de Sentencias SQL

Conexin a una instancia mediante:


Procesos de usuario
Procesos de servidor
Los componentes de Oracle Server que se utilicen
dependern del tipo de sentencia SQL:
Filas de devolucin de consultas
Cambios de log de sentencias DML
La validacin garantiza la recuperacin de la transaccin
Algunos componentes de Oracle Server no participan
en el procesamiento de las sentencias SQL.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen
En esta leccin, ha aprendido a:
Explicar los archivos de la base de datos: archivos de
datos, archivos de control, archivos redo log online
Explicar las estructuras de memoria SGA: cach de
buffers de base de datos, conjunto compartido y buffer
de redo log
Explicar los principales procesos en segundo plano:
DBWn, LGWR, CKPT, PMON, SMON
Explicar el uso del proceso en segundo plano opcional
ARCn
Identificar procesos en segundo plano opcionales y
condicionales
Explicar la jerarqua lgica

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 1: Visin General

Esta prctica abarca los siguientes temas:


Revisin de los componentes de la arquitectura
Identificacin de las estructuras que participan en la
conexin de un usuario a una instancia Oracle

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Introduccin a Oracle Server

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Identificar herramientas de administracin de base
de datos comunes disponibles para el DBA
Identificar las caractersticas de Oracle Universal
Installer
Utilizar SQL*Plus para manipular una base de datos
Oracle e interactuar con ella
Enumerar los componentes principales de Oracle
Enterprise Manager

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Herramientas de Administracin de Bases
de Datos

Herramienta Descripcin

Oracle Universal Utilizada para instalar, actualizar o eliminar componentes


Installer (OUI) de software
Asistente de Herramienta de interfaz grfica de usuario que interacta con
Configuracin de Bases OUI, o que se puede utilizar de forma independiente para
de Datos Oracle crear, suprimir o modificar una base de datos

SQL*Plus Utilidad para acceder a los datos de una base de datos Oracle

Oracle Enterprise Interfaz grfica utilizada para administrar, controlar y ajustar


Manager una o ms bases de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Oracle Universal Installer

Utilizado para instalar, actualizar o eliminar componentes


de software y crear una base de datos
Basado en un sistema Java
Entre sus caractersticas se incluyen
Resolucin automtica de dependencias
Permite instalaciones basadas en Web
Seguimiento de inventario de instalaciones de componentes y
series
Desinstalacin de componentes instalados
Soporte para varios directorios raz de Oracle
Soporte para tecnologa de globalizacin

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Inicio de Oracle Universal Installer

Para iniciar Oracle Universal Installer en UNIX:


$ ./runInstaller

Para iniciar Oracle Universal Installer en NT:


Start > Programs > Oracle Installation
Products > Universal Installer

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Instalacin no Interactiva con Archivos de
Respuesta

No requiere interaccin por parte del usuario


Archivos de respuesta:
Las plantillas se deben editar.
Los archivos de texto contienen variables y valores.
Los parmetros se personalizan.
Para iniciar Oracle Universal Installer en modo no
interactivo:

./runInstaller -responsefile myrespfile -silent

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Asistente de Configuracin de Bases de
Datos Oracle

El Asistente de Configuracin de Bases de Datos


Oracle sirve para:
Crear una base de datos
Configurar opciones de base de datos
Suprimir una base de datos
Gestionar plantillas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Usuarios Administradores de Base de Datos

Los usuarios SYS y SYSTEM se crean de forma automtica


Durante la creacin de la base de datos
Se les otorga el rol DBA
Usuario SYS
Propietario del diccionario de datos de la base de datos
Contrasea por defecto: change_on_install
Usuario SYSTEM
Propietario de las vistas y tablas internas adicionales que
utilizan las herramientas de Oracle
Contrasea por defecto: manager

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


SQL*Plus

Herramienta de Oracle que permite:


Manipular la base de datos e interactuar con ella
Iniciar y cerrar la base de datos, crear y ejecutar consultas,
agregar filas, modificar datos y escribir informes
personalizados
Subjuego del lenguaje SQL estndar con complementos
especficos
Conexin con SQL*Plus:

sqlplus /nolog
connect / as sysdba
Connected to an idle instance.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Oracle Enterprise Manager

Funciona como herramienta de gestin centralizada


de sistemas para los DBA
Herramienta para administrar, diagnosticar y ajustar
varias bases de datos
Herramienta para administrar varios nodos de red y
servicios desde muchas ubicaciones
Se utiliza para compartir tareas con otros
administradores
Proporciona herramientas para administrar
servidores paralelos y bases de datos replicadas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Arquitectura de Oracle Enterprise Manager

Oracle Management Agente Oracle


Server Server
Consola

Agente Oracle
Repositorio Server

Oracle Management
Server Oracle
Server

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Consola

Punto de inicio
central
Puede ejecutarse
en un cliente fino
o un cliente
grueso
Se puede iniciar
de manera
autnoma o por
medio de un
OMS

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Identificar herramientas de administracin de base de
datos
Identificar las caractersticas de Oracle Universal Installer
Utilizar SQL*Plus para manipular la base de datos e
interactuar con ella
Identificar los componentes principales de Oracle
Enterprise Manager

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 2: Visin General

Esta prctica abarca los siguientes temas:


Conexin con SQL*Plus
Conexin con la consola de Oracle Enterprise
Manager

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de una Instancia Oracle

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Crear y gestionar archivos de parmetros de
inicializacin
Iniciar y cerrar una instancia
Controlar y utilizar archivos de diagnstico

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Archivos de Parmetros de Inicializacin

Instancia Oracle

Conjunto Compartido SGA

Cach de Buffer de
Cach de Buffers
Biblioteca Redo Log
de Base de Datos
Cach del Diccionario
de Datos Conjunto Java Conjunto Grande

PMON SMON DBW0 LGWR CKPT Otros

spfiledb01.ora

CONNECT / AS SYSDBA
STARTUP

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Archivos de Parmetros de Inicializacin
Las entradas son especficas de la instancia que se inicia
Dos tipos de parmetros:
Explcitos: Tienen una entrada en el archivo
Implcitos: Sin entrada en el archivo, aunque suponen los
valores por defecto de Oracle
Pueden existir varios archivos de parmetros de
inicializacin
Los cambios en las entradas del archivo entran en vigor
en funcin del tipo de archivo de parmetros de
inicializacin utilizado:
Archivo de parmetros esttico, PFILE
Archivo de parmetros de servidor persistente, SPFILE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


PFILE
initSID.ora

Archivo de texto
Se modifica con un editor del sistema operativo
Las modificaciones se realizan de forma manual
Los cambios entran en vigor en el siguiente inicio
Slo se abre durante el inicio de la instancia
La ubicacin por defecto es $ORACLE_HOME/dbs

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de un Archivo PFILE

Creado a partir de un archivo de ejemplo init.ora


Ejemplo instalado por Oracle Universal Installer
Copie el archivo de ejemplo con el comando COPY del
sistema operativo
El SID de la base de datos lo identifica como nico

cp init.ora $ORACLE_HOME/dbs/initdba01.ora

Modifique el archivo initSID.ora


Edite los parmetros
Especfico de las necesidades de la base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Ejemplo de PFILE
# Initialization Parameter File: initdba01.ora
db_name = dba01
instance_name = dba01
control_files = (
/home/dba01/ORADATA/u01/control01dba01.ctl,
/home/dba01/ORADATA/u02/control01dba02.ctl)
db_block_size = 4096
db_cache_size = 4M
shared_pool_size = 50000000
java_pool_size = 50000000
max_dump_file_size = 10240
background_dump_dest = /home/dba01/ADMIN/BDUMP
user_dump_dest = /home/dba01/ADMIN/UDUMP
core_dump_dest = /home/dba01/ADMIN/CDUMP
undo_management = AUTO
undo_tablespace = UNDOTBS
. . .

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


SPFILE
spfileSID.ora

Archivo binario
Lo mantiene Oracle Server
Siempre reside en el servidor
Capacidad de realizar cambios persistentes en los
procesos de cierre y de inicio
Puede autoajustar los valores de los parmetros
Puede tener soporte de Recovery Manager para
realizar copias de seguridad en el archivo de
parmetros de inicializacin

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de un Archivo SPFILE

Creado a partir de un archivo PFILE


CREATE SPFILE = ?$ORACLE_HOME/dbs/spfileDBA01.ora?
FROM PFILE = ?$ORACLE_HOME/dbs/initDBA01.ora?;
donde
NOMBRE-SPFILE: Archivo SPFILE que se va a crear
NOMBRE-PFILE: Archivo PFILE que crea el archivo SPFILE
Se puede ejecutar antes o despus del inicio de
instancia

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Ejemplo de SPFILE
*.background_dump_dest= '/home/dba01/ADMIN/BDUMP'
*.compatible='9.0.0'
*.control_files='/home/dba01/ORADATA/u01/ctrl01.ctl'
*.core_dump_dest= '/home/dba01/ADMIN/CDUMP'
*.db_block_size=4096
*.db_name='dba01
*.db_domain= 'world'
*.global_names=TRUE
*.instance_name='dba01'
*.remote_login_passwordfile='exclusive
*.java_pool_size=50000000
*.shared_pool_size=50000000
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS'
. . .

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Modificacin de Parmetros de SPFILE

Cambio de valores de parmetros


ALTER SYSTEM SET undo_tablespace = UNDO2;

Especificacin de los cambios temporales o


persistentes

ALTER SYSTEM SET undo_tablespace = UNDO2


SCOPE=BOTH;

Supresin o restablecimiento de valores


ALTER SYSTEM RESET undo_suppress_errors
SCOPE=BOTH SID='*';

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Comportamiento del Comando STARTUP

Orden de prioridad:
spfileSID.ora
SPFILE por defecto
initSID.ora
PFILE por defecto
El archivo PFILE especificado puede sustituir la
prioridad.
STARTUP PFILE = $ORACLE_HOME/dbs/initDBA1.ora
PFILE puede indicar que se utilice SPFILE.
SPFILE = /database/startup/spfileDBA1.ora

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Inicio de una Base de Datos
NOMOUNT
OPEN
STARTUP

MOUNT

NOMOUNT

Instancia
iniciada
SHUTDOWN
SHUTDOWN

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Inicio de una Base de Datos
MOUNT
OPEN
STARTUP

MOUNT

Archivo de
control abierto
NOMOUNT para esta
instancia
Instancia
iniciada
SHUTDOWN
SHUTDOWN

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Inicio de una Base de Datos
OPEN
OPEN
STARTUP Todos los archivos que
se abren segn describe
MOUNT el archivo de control de
esta instancia
Archivo de
control abierto
NOMOUNT para esta
instancia
Instancia
iniciada
SHUTDOWN
SHUTDOWN

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Comando STARTUP

Iniciar la instancia y abrir la base de datos:

STARTUP

STARTUP PFILE=$ORACLE_HOME/dbs/initdb01.ora

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Comando ALTER DATABASE

Cambia el estado de la base de datos de NOMOUNT a


MOUNT:
ALTER DATABASE db01 MOUNT;

Abre la base de datos en modo de slo lectura:


ALTER DATABASE db01 OPEN READ ONLY;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Apertura de una Base de Datos en Modo
Restringido

Use el comando STARTUP para restringir el acceso a


una base de datos:
STARTUP RESTRICT

Utilice el comando ALTER SYSTEM para poner una


instancia en modo restringido:
ALTER SYSTEM ENABLE RESTRICTED SESSION;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Apertura de una Base de Datos en Modo
de Slo Lectura

Apertura de una base de datos en modo de slo


lectura:
STARTUP MOUNT
ALTER DATABASE OPEN READ ONLY;

Se puede utilizar para:


Ejecutar consultas
Ejecutar las ordenaciones de disco mediante
tablespaces gestionados localmente
Poner online y offline archivos de datos, pero no
tablespaces
Realizar la recuperacin de tablespaces y archivos de
datos offline
Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.
Cierre de la Base de Datos

Modo de Cierre A I T N

Permite nuevas conexiones No No No No

Espera a que finalicen las sesiones actuales No No No S

Espera a que finalicen las transacciones actuales No No S S

Fuerza un punto de control y cierra los archivos No S S S

Modo de cierre:
A = ABORT
I = IMMEDIATE
T = TRANSACTIONAL
N = NORMAL

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Opciones SHUTDOWN

Durante
Al cerrar: Al iniciar:
SHUTDOWN
La cach de buffers NORMAL Sin recuperacin
de base de datos o de instancia
se escribe en los SHUTDOWN
TRANSACTIONAL
archivos de datos o
Los cambios no SHUTDOWN
validados IMMEDIATE
se deshacen
Recursos liberados

Base de datos consistente


(base de datos limpia)

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Opciones SHUTDOWN

Durante
Al cerrar: Al iniciar:
SHUTDOWN ABORT
Los buffers o Se utilizan archivos
modificados no se Fallo de la Instancia redo log online para
escriben en los o volver a aplicar los
archivos de datos STARTUP FORCE cambios
No se hace Se utilizan segmentos
rollback de los de deshacer para
cambios no hacer rollback de los
validados cambios no validados
Recursos liberados
Base de datos inconsistente
(base de datos sucia)

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Control de una Instancia con
Archivos de Diagnstico

Archivos de diagnstico
Contienen informacin acerca de los eventos
significativos que se han producido
Se utilizan para solucionar problemas
Se utilizan para mejorar la gestin diaria de la base de
datos
Existen varios tipos:
Archivo alertSID.log
Archivos de rastreo en segundo plano
Archivos de rastreo de usuario

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Archivo Log de Alertas

Archivo alertSID.log:
Registra los comandos
Registra los resultados de los eventos principales
Se utiliza para la informacin diaria de operaciones
Se utiliza para diagnosticar errores de base de datos
Cada entrada tiene un registro de hora asociado
Lo debe gestionar el DBA
La ubicacin la define el parmetro
BACKGROUND_DUMP_DEST

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Archivos de Rastreo en Segundo Plano

Archivos de rastreo en segundo plano


Registran los errores detectados por cualquier
proceso en segundo plano
Se utilizan para diagnosticar y solucionar errores
Se crean cuando un proceso en segundo plano
tiene un error
La ubicacin la define el parmetro
BACKGROUND_DUMP_DEST

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Archivos de Rastreo de Usuario

Archivos de rastreo de usuario


Producidos por el proceso de usuario
Los puede generar un proceso de servidor
Contienen estadsticas para sentencias SQL rastreadas
Contienen mensajes de error de usuario
Creados cuando un usuario encuentra errores de sesin
de usuario
La ubicacin la define el parmetro USER_DUMP_DEST
El tamao lo define el parmetro MAX_DUMP_FILE_SIZE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Activacin o Desactivacin del Rastreo de
Usuario

Nivel de sesin:
Con el comando ALTER SESSION:
ALTER SESSION SET SQL_TRACE = TRUE
Ejecucin del procedimiento DBMS:
dbms_system.SET_SQL_TRACE_IN_SESSION
Nivel de instancia
Definiendo el parmetro de inicializacin:
SQL_TRACE = TRUE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Crear y gestionar archivos de parmetros de
inicializacin
Iniciar y cerrar una instancia
Controlar y utilizar archivos de diagnstico

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 3: Visin General

Esta prctica abarca los siguientes temas:


Creacin de un archivo SPFILE
Inicio y cierre de la base de datos en distintos
modos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de una Base de Datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Enumerar los requisitos necesarios para la creacin
de bases de datos
Crear una base de datos con el Asistente de
Configuracin de Bases de Datos Oracle
Crear una base de datos de forma manual
Crear una base de datos con OMF (Oracle Managed
Files)

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Planificacin y Organizacin de una Base
de Datos

La planificacin de la base de datos es el primer


paso para gestionar un sistema de base de datos
Defina el objetivo de la base de datos.
Defina el tipo de la base de datos.
Describa el diseo arquitectnico de la base de datos.
Seleccione el nombre de la base de datos.
Cree su base de datos.
Utilice el Asistente de Migracin de Datos Oracle
para realizar una migracin desde una versin
anterior de la base de datos.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Arquitectura OFA (Optimal Flexible
Architecture)

Diseo de arquitectura de base de datos estndar


recomendado por Oracle
La arquitectura OFA tiene tres reglas principales:
Establecer una estructura de directorios en la que
cualquier archivo de base de datos se pueda
almacenar en cualquier recurso de disco.
Separar los objetos que tengan un comportamiento
distinto en diferentes tablespaces.
Maximizar la fiabilidad y el rendimiento de la base de
datos separando los componentes de la base de datos
en distintos recursos de disco.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Ubicaciones de Archivos y Software de Oracle

Software Archivos
oracle_base
oradata/
/product
db01/
/release_number system01.dbf
/bin control01.ctl
/dbs redo0101.log
/rdbms ...
/sqlplus
db02/
system01.dbf
/admin
control01.ctl
/inst_name redo0101.log
...
/pfile

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Requisitos de Creacin

Para crear una base de datos nueva, debe disponer de


lo siguiente:
Una cuenta con privilegios autenticada de una de
las siguientes formas:
Por el sistema operativo
Por el archivo de contraseas
Memoria suficiente para iniciar la instancia
Espacio de disco suficiente para la base de datos
planificada

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Mtodos de Autenticacin para
Administradores de Base de Datos

Administracin remota Administracin local


de la base de datos de la base de datos

S S
Dispone de Desea utilizar la Utilice la autenticacin
una conexin autenticacin del sistema operativo
segura? del SO?

No No
Utilice un archivo
de contraseas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Uso de la Autenticacin de Archivo de
Contraseas

Cree el archivo de contraseas con la utilidad de contraseas.


$ orapwd file=$ORACLE_HOME/dbs/orapwU15
password=admin entries=5
Defina REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE en el
archivo de parmetros de inicializacin.
Agregue usuarios al archivo de contraseas.
Asigne los privilegios correspondientes a cada usuario.
GRANT SYSDBA TO HR;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de una Base de Datos

Se puede crear una base de datos Oracle mediante:


Oracle Universal Installer
Asistente de Configuracin de Bases de Datos Oracle
Interfaz grfica de usuario
Basado en Java
Lanzado por Oracle Universal Installer
Se puede utilizar como una aplicacin autnoma
El comando CREATE DATABASE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Entorno del Sistema Operativo

Defina las siguientes variables de entorno:


ORACLE_BASE
ORACLE_HOME
ORACLE_SID
ORA_NLS33
PATH
LD_LIBRARY_PATH

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Asistente de Configuracin de Bases de Datos

Con el Asistente de Configuracin de Bases de Datos puede:


Crear una base de datos
Configurar las opciones de la base de datos
Suprimir una base de datos
Gestionar plantillas
Crear nuevas plantillas utilizando valores predefinidos
Crear nuevas plantillas a partir de una base de datos
existente
Suprimir plantillas de base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de una Base de Datos con el Asistente
de Configuracin de Bases de Datos
1. Seleccione la opcin de creacin de una base de datos
2. Especifique el tipo de la base de datos
3. Especifique el nombre global y SID de la base de datos
4. Seleccione las caractersticas
5. Seleccione el modo operativo de la base de datos
6. Especifique las opciones de memoria, juegos de caracteres,
tamao de la base de datos, ubicaciones de archivos y
archivado
7. Defina los parmetros de almacenamiento de la base de datos
8. Seleccione las opciones para:
Crear la base de datos
Guardarla como plantilla
Generar un archivo de comandos de creacin

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de una Base de Datos
Manualmente

Seleccione una instancia y un nombre de base de datos


nicos
Seleccione un juego de caracteres de base de datos
Defina las variables del sistema operativo
Cree el archivo de parmetros de inicializacin
Inicie la instancia en la etapa NOMOUNT
Cree y ejecute el comando CREATE DATABASE
Ejecute los archivos de comandos para generar el
diccionario de datos y llevar a cabo los pasos
posteriores a la creacin
Cree los tablespaces adicionales que sean necesarios

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de una Base de Datos con OMF
(Oracle Managed Files)
El uso de archivos OMF simplifica la administracin
de archivos en el sistema operativo.
Oracle Server crea y suprime los archivos OMF tal y
como se lo indican los comandos SQL.
Los archivos OMF se establecen definiendo dos
parmetros:
DB_CREATE_FILE_DEST: Definido con el fin de
establecer la ubicacin por defecto de los archivos de
datos
DB_CREATE_ONLINE_LOG_DEST_n: Definido con el fin
de establecer las ubicaciones por defecto de los
archivos redo log online y de control
Cinco ubicaciones como mximo

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de una Base de Datos con OMF
(Oracle Managed Files)

Defina los parmetros OMF en el archivo de


parmetros de inicializacin. Ejemplo:
DB_CREATE_FILE_DEST=/$HOME/ORADATA/u05
DB_CREATE_ONLINE_LOG_DEST_1=/$HOME/ORADATA/u01
DB_CREATE_ONLINE_LOG_DEST_2=/$HOME/ORADATA/u02
El comando CREATE DATABASE se simplifica:

@cddba01.sql
> CREATE DATABASE dba01;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Comando CREATE DATABASE
CREATE DATABASE user01
USER SYS IDENTIFIED BY ORACLE
USER SYSTEM IDENTIFIED BY MANAGER
CONTROLFILE REUSE
LOGFILE
GROUP 1 ('$HOME/ORADATA/u01/redo01.log') SIZE 100M,
GROUP 2 ('$HOME/ORADATA/u02/redo02.log') SIZE 100M,
GROUP 3 ('$HOME/ORADATA/u03/redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
ARCHIVELOG
FORCE LOGGING
CHARACTER SET US7ASCII
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/$HOME/ORADATA/u01/system01.dbf' SIZE 325M
DEFAULT TEMPORARY TABLESPACE temp
UNDO TABLESPACE undotbs
SET TIME_ZONE= 'America/New_York'

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Solucin de Problemas

La creacin de la base de datos falla si:


Hay errores de sintaxis en el archivo de comandos SQL
Los archivos que se deben crear ya existen
Se producen errores del sistema operativo, como
errores de permisos de directorio o de archivo, o de
espacio insuficiente en disco

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tras la Creacin de la Base de Datos

La base de datos contiene:


Archivos de datos, archivos de control y archivos
redo log online
El usuario SYS con la contrasea
change_on_install
El usuario SYSTEM con la contrasea manager
Tablas internas (pero sin vistas del diccionario de
datos)

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Identificar los requisitos para la creacin de una
base de datos
Crear una base de datos con el Asistente de
Configuracin de Bases de Datos Oracle
Crear una base de datos de forma manual
Crear una base de datos con OMF (Oracle Managed
Files)

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 4: Visin General

En esta leccin se describen dos formas


especficas para crear una base de datos:
Utilice el Asistente de Configuracin de Bases de
Datos para crear una base de datos mediante pasos
grficos. Se lanza de la siguiente forma:
Start > Programs > Oracle-OraHome90 > Configuration
and Migration Tools.
En el Apndice A se incluye una gua detallada para
crear una base de datos de forma manual en un
sistema UNIX.
Revise los pasos y, si lo desea, cree una base de
datos de forma manual o con el Asistente de
Configuracin de Bases de Datos.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Uso del Diccionario de Datos
y las Vistas Dinmicas de Rendimiento

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Identificar objetos de base de datos incorporados
Identificar el contenido y los usos del diccionario de
datos
Describir cmo se crean las vistas del diccionario
de datos
Identificar las categoras de vistas del diccionario
de datos
Consultar el diccionario de datos y las vistas
dinmicas de rendimiento
Describir las reglas de nomenclatura de los
archivos de comandos administrativos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetos de Base de Datos Incorporados

Otros objetos creados con la base de datos son:


Diccionario de datos
Tablas de rendimiento
Paquetes PL/SQL
Disparadores de eventos de la base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Diccionario de Datos

Es fundamental para toda base de datos Oracle


Describe la base de datos y sus objetos
Contiene tablas y vistas de slo lectura
Se almacena en el tablespace SYSTEM
Es propiedad del usuario SYS
Archivos
Lo mantiene Oracle Server de datos
Archivos de Archivos
Se accede a l con SELECT control Redo Log

Base de datos

Tablas del Diccionario


de Datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tablas Base y Vistas del Diccionario de Datos

El diccionario de datos contiene dos partes:


Tablas base
Almacenan la descripcin de la base de datos
Se crean con el comando CREATE DATABASE
Vistas del diccionario de datos
Se utilizan para simplificar la informacin de las tablas base
Se accede a ellas a travs de sinnimos pblicos
Se crean con el archivo de comandos catalog.sql

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de las Vistas del Diccionario de Datos

Archivo de comandos Objetivo

Crea sinnimos y vistas del diccionario de


catalog.sql datos que se utilizan frecuentemente

Ejecuta los archivos de comandos necesarios


catproc.sql para el PL/SQL del servidor

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Contenido del Diccionario de Datos

El diccionario de datos proporciona informacin acerca de:


Estructuras lgicas y fsicas de la base de datos
Definiciones y asignaciones de espacio de los objetos
Restricciones de integridad
Usuarios
Roles
Privilegios
Auditoras

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Uso del Diccionario de Datos

Usos principales:
Oracle Server lo utiliza para buscar informacin
acerca de
Usuarios
Objetos de esquema
Estructuras de almacenamiento
Oracle Server lo modifica cuando se ejecuta una
sentencia DDL.
Los usuarios y DBA lo pueden utilizar como una
referencia de slo lectura para obtener informacin
acerca de la base de datos.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Categoras de las Vistas del Diccionario de Datos

Existen tres juegos de vistas estticas


Se diferencian por su mbito:
DBA: Lo que hay en todos los esquemas
ALL: A lo que puede acceder el usuario
USER: Lo que hay en el esquema del usuario

DBA_xxx Todos los objetos de la base de datos

ALL_xxx Objetos accesibles para el usuario actual

USER_xxx Objetos que posee el usuario actual

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Ejemplos del Diccionario de Datos

Visin general: DICTIONARY, DICT_COLUMNS


Objetos de esquema: DBA_TABLES, DBA_INDEXES,
DBA_TAB_COLUMNS, DBA_CONSTRAINTS
Asignacin de espacio: DBA_SEGMENTS,
DBA_EXTENTS
Estructura de la base de datos: DBA_TABLESPACES,
DBA_DATA_FILES

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tablas Dinmicas de Rendimiento

Tablas virtuales
Registran la actividad actual de la base de datos
Se actualizan continuamente mientras la base de
datos est en funcionamiento
Se accede a la informacin desde la memoria y el
archivo de control
Se utiliza para controlar y ajustar la base de datos
El propietario es el usuario SYS
Los sinnimos empiezan por V$
Se enumeran en V$FIXED_TABLE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Ejemplos de Vistas Dinmicas de
Rendimiento

V$CONTROLFILE
V$DATABASE
V$DATAFILE
V$INSTANCE
V$PARAMETER
V$SESSION
V$SGA
$SPPARAMETER
V$TABLESPACE
V$THREAD
V$VERSION

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Reglas de Nomenclatura de Archivos de
Comandos Administrativos

Convencin Descripcin

cat*.sql Informacin del diccionario de datos y del catlogo

dbms*.sql Especificaciones del paquete de la base de datos

prvt*.plb Cdigo ajustado del paquete de la base de datos

utl*.sql Vistas y tablas para las utilidades de la base de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Identificar los objetos de base de datos incorporados
Identificar el contenido y los usos del diccionario de datos
Describir cmo se crean las vistas del diccionario de datos
Identificar las categoras de vistas del diccionario de datos
Consultar el diccionario de datos y las vistas dinmicas de
rendimiento
Describir las reglas de nomenclatura de los archivos de
comandos administrativos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 5: Visin General

Esta prctica abarca los siguientes temas:


Identificacin de los componentes y el contenido
del diccionario de datos
Consulta del diccionario de datos y las vistas
dinmicas de rendimiento

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Mantenimiento del Archivo de Control

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Explicar los usos del archivo de control
Enumerar el contenido del archivo de control
Multiplexar y gestionar el archivo de control
Gestionar el archivo de control con OMF (Oracle
Managed Files)
Obtener informacin acerca del archivo de control

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Archivo de Control

Archivo binario pequeo


Define el estado actual de la base de datos fsica
Mantiene la integridad de la base de datos
Es necesario:
En el estado MOUNT durante el inicio de la base de datos
Para hacer funcionar la base de datos
Base de datos
Enlazado a una nica base de datos
Puede que si se pierde, sea Archivos
de control
necesario realizar una recuperacin
El tamao est especificado
inicialmente por CREATE DATABASE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Contenido del Archivo de Control

Un archivo de control contiene las siguientes entradas:


Nombre e identificador de base de datos
Registro de hora de la creacin de la base de datos
Nombres de tablespace
Nombres y ubicaciones de los archivos de datos y los
archivos redo log online
El nmero de secuencia del archivo redo log online actual
Informacin del punto de control
Inicio y fin de los segmentos de deshacer
Informacin de los redo logs archivados
Informacin de copia de seguridad

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Multiplexacin del Archivo de Control

CONTROL_FILES=
$HOME/ORADATA/u01/ctrl01.ctl, $HOME/ORADATA/u02/ctrl02.ctl

Disco 1 (u01) Disco 2 (u02)

ctrl01.ctl ctrl02.ctl

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Multiplexacin del Archivo de Control
al Utilizar SPFILE

1. Modifique el archivo SPFILE:


ALTER SYSTEM SET control_files =
'$HOME/ORADATA/u01/ctrl01.ctl',
'$HOME/ORADATA/u02/ctrl02.ctl' SCOPE=SPFILE;
2. Cierre la base de datos:
shutdown immediate
3. Cree archivos de control adicionales:
cp $HOME/ORADATA/u01/ctrl01.ctl
$HOME/ORADATA/u02/ctrl02.ctl
4. Inicie la base de datos:
startup

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Multiplexacin del Archivo de Control
al Utilizar PFILE

1. Cierre la base de datos:


shutdown immediate

2. Cree archivos de control adicionales:


cp $HOME/ORADATA/u01/ctrl01.ctl
$HOME/ORADATA/u02/ctrl02.ctl
3. Agregue nombres de archivos de control a PFILE:
CONTROL_FILES = $HOME/ORADATA/u01/ctrl01.ctl,
$HOME/ORADATA/u02/ctrl02.ctl)
4. Inicie la base de datos:
startup

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Archivos de Control con OMF

OMF se crea si no se especifica el parmetro


CONTROL_FILES.
Las ubicaciones se definen por medio de
DB_CREATE_ONLINE_LOG_DEST_n.
Los nombres se muestran y generan de manera
nica en alertSID.log.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Obtencin de Informacin del Archivo de Control

Para recuperar informacin acerca del estado y las


ubicaciones del archivo de control, puede consultar las
siguientes vistas.
V$CONTROLFILE: Enumera el nombre y el estado
de todos los archivos de control asociados a la instancia
V$PARAMETER: Enumera el estado y la ubicacin
de todos los parmetros
V$CONTROLFILE_RECORD_SECTION: Proporciona
informacin acerca de las secciones de registros del
archivo de control
SHOW PARAMETER CONTROL_FILES: Enumera el nombre,
el estado y la ubicacin de los archivos de control

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Multiplexar el archivo de control al utilizar un
archivo SPFILE
Multiplexar el archivo de control al utilizar
init.ora
Gestionar los archivos de control con OMF

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 6: Visin General

Esta prctica abarca los siguientes temas:


Inicio de la base de datos sin un archivo de control
Multiplexacin de un archivo de control existente

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Mantenimiento de Archivos Redo Log
Online

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Explicar el objetivo de los archivos redo log online
Definir el esquema de la estructura de los archivos
redo log online
Controlar los cambios de log y los puntos de
control
Multiplexar y mantener archivos redo log online
Gestionar archivos redo log online con OMF
Obtener informacin de los archivos redo log online

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Uso de los Archivos Redo Log Online

Los archivos redo log online tienen las siguientes


caractersticas:
Registran todos los cambios realizados en los datos
Proporcionan un mecanismo de recuperacin
Se pueden organizar en grupos
Son necesarios al menos dos grupos

Archivos
redo log

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Estructura de los Archivos Redo Log Online

Grupo 1 Grupo 2 Grupo 3


Disco
1
Miembro Miembro Miembro

Miembro Miembro Miembro Disco


2

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Funcionamiento de los Archivos Redo Log Online

Los archivos redo log online se utilizan de manera cclica.


Si un archivo redo log online se llena, LGWR pasar al
siguiente grupo de log:
Se llama cambio de log
Tambin se produce una operacin de punto de control
La informacin se escribe en el archivo de control

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Forzado de Cambios de Log y de Puntos
de Control

Forzado de un cambio de log:


ALTER SYSTEM SWITCH LOGFILE;

Los puntos de control se pueden forzar:


Definiendo el parmetro FAST_START_MTTR_TARGET
FAST_START_MTTR_TARGET = 600
Con el comando ALTER SYSTEM CHECKPOINT
ALTER SYSTEM CHECKPOINT;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Adicin de Grupos de Archivos Redo Log Online

ALTER DATABASE ADD LOGFILE GROUP 3


('$HOME/ORADATA/u01/log3a.rdo',
'$HOME/ORADATA/u02/log3b.rdo')
SIZE 1M;

log1a.rdo log2a.rdo log3a.rdo

log1b.rdo log2b.rdo log3b.rdo

Grupo 1 Grupo 2 Grupo 3

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Adicin de Miembros de Archivos Redo
Log Online

ALTER DATABASE ADD LOGFILE MEMBER


'$HOME/ORADATA/u04/log1c.rdo' TO GROUP 1,
'$HOME/ORADATA/u04/log2c.rdo' TO GROUP 2,
'$HOME/ORADATA/u04/log3c.rdo' TO GROUP 3;

log1a.rdo log2a.rdo log3a.rdo

log1b.rdo log2b.rdo log3b.rdo

log1c.rdo log2c.rdo log3c.rdo

Grupo 1 Grupo 2 Grupo 3

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Borrado de Grupos de
Archivos Redo Log Online

ALTER DATABASE DROP LOGFILE GROUP 3;

log1a.rdo log2a.rdo log3a.rdo

Grupo 1 Grupo 2 Grupo 3

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Borrado de los Miembros
de Archivos Redo Log Online

ALTER DATABASE DROP LOGFILE MEMBER


'$HOME/ORADATA/u04/log3c.rdo';

log1a.rdo log1a.rdo

log1b.rdo log1b.rdo

log1c.rdo log2c.rdo

Grupo 1 Grupo 2

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Reubicacin o Cambio de Nombre
de los Archivos Redo Log Online

Los archivos redo log online se pueden reubicar o cambiar


de nombre de las dos formas siguientes:
Con el comando ALTER DATABASE RENAME FILE
Cierre la base de datos.
Copie los archivos redo log online en la nueva ubicacin.
Coloque la base de datos en el modo MOUNT.
Ejecute el comando.
Abra la base de datos para que funcione normalmente.
ALTER DATABASE RENAME FILE
'$HOME/ORADATA/u01/log2a.rdo'
TO '$HOME/ORADATA/u02/log1c.rdo';

Agregue nuevos miembros o borre miembros antiguos.


Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.
Limpieza de Archivos Redo Log Online

Para reinicializar un archivo redo log online, se puede


utilizar el comando ALTER DATABASE CLEAR LOGFILE.
ALTER DATABASE CLEAR LOGFILE GROUP 2;

Utilice la palabra clave UNARCHIVED para evitar que el


archivo redo log online corrupto se archive.
ALTER DATABASE CLEAR UNARCHIVED
LOGFILE GROUP 2;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Configuracin de los Archivos Redo Log Online

Grupo 1
? Grupo 2 Grupo 3

Miembro Miembro Miembro

Miembro Miembro

Disco 1 Disco 2 Disco 3

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Archivos Redo Log Online con OMF

Defina el parmetro
DB_CREATE_ONLINE_LOG_DEST_n:
DB_CREATE_ONLINE_LOG_DEST_1
DB_CREATE_ONLINE_LOG_DEST_2
Se puede agregar un grupo sin especificacin de
archivo:
ALTER DATABASE ADD LOGFILE;

Borrado de un grupo:
ALTER DATABASE DROP LOGFILE GROUP 3;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Obtencin de Informacin de Miembros y Grupos

Se puede obtener informacin acerca de un grupo y


sus miembros consultando las siguientes vistas:
V$LOG
V$LOGFILE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Archivos Redo Log Archivados

Los archivos redo log online llenos se pueden archivar.


La ejecucin de la base de datos en modo ARCHIVELOG
y el proceso de archivado de archivos redo log online
tiene dos ventajas:
Recuperacin: La copia de seguridad de la base de datos y
los archivos redo log archivados y online garantizan la
recuperacin de todas las transacciones validadas.
Copia de seguridad: Se puede realizar mientras la base de
datos est abierta.
Por defecto, la base de datos se crea en modo
NOARCHIVELOG.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Archivos Redo Log Archivados

El proceso ARCn realiza el archivado automticamente


El archivado se realiza manualmente mediante sentencias
SQL
Si el archivado se realiza correctamente:
Se registra una entrada en el archivo de control
Registros: Nombre de archive log, nmero de secuencia de log y
SCN (Nmero de Cambio del Sistema) inferior y superior
Los archivos redo log online llenos no se pueden reutilizar
hasta que:
Haya tenido lugar un punto de control
ARCn ha archivado el archivo
Se puede multiplexar
Lo mantiene el DBA

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Explicar el uso de archivos redo log online
Obtener informacin acerca de los archivos redo log
online
Controlar los cambios de log y los puntos de control
Multiplexar y mantener archivos redo log online
Gestionar archivos redo log online con OMF

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 7: Visin General

Esta prctica abarca los siguientes temas:


Creacin de grupos y miembros de archivos redo
log online
Mantenimiento de grupos y miembros de archivos
redo log online
Gestin de archivos redo log online con OMF

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Tablespaces y
Archivos de Datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Definir el objetivo de los tablespaces y los archivos
de datos
Crear tablespaces
Gestionar tablespaces
Crear y gestionar tablespaces con OMF (Oracle
Managed Files)
Obtener informacin acerca de tablespaces

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tablespaces y Archivos de Datos

Oracle almacena los datos de forma lgica en


tablespaces y de forma fsica en archivos de datos.
Tablespaces:
Slo pueden pertenecer a una base de datos a la vez
Estn formados por uno o ms archivos de datos
Se subdividen en unidades lgicas de almacenamiento
Archivos de datos:
Slo pueden pertenecer a un
tablespace y a una base de datos Base de datos
Constituyen un repositorio para
Tablespace
los datos de objetos de esquema

Archivos de
datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tipos de Tablespaces

Tablespace SYSTEM
Se crea con la base de datos
Contiene el diccionario de datos
Contiene el segmento de deshacer SYSTEM
Tablespace que no es SYSTEM
Segmentos separados
Facilita la administracin de espacio
Controla la cantidad de espacio asignada a un usuario

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de Tablespaces

Los tablespaces se crean con el comando:


CREATE TABLESPACE

CREATE TABLESPACE userdata


DATAFILE '/u01/oradata/userdata01.dbf' SIZE 5M;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin del Espacio de Tablespaces

Tablespaces gestionados localmente:


Las extensiones libres se gestionan en el tablespace.
Se utiliza un bitmap para registrar las extensiones
libres.
Cada bit se corresponde con un bloque o un grupo de
bloques.
El valor del bit indica si est libre o en uso.
Tablespaces gestionados por un diccionario:
El diccionario de datos gestiona las extensiones
libres.
Se actualizan las tablas correspondientes al asignar o
liberar las asignaciones de las extensiones.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tablespaces Gestionados Localmente

Reducen la contencin de las tablas del diccionario


de datos
No se genera informacin de deshacer cuando se
produce la asignacin o la liberacin de espacio
No se necesita fusin alguna
CREATE TABLESPACE userdata
DATAFILE '/u01/oradata/userdata01.dbf' SIZE 500M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tablespaces Gestionados por el
Diccionario

Las extensiones se gestionan en el diccionario de


datos.
Cada segmento almacenado en el tablespace puede
tener una clusula de almacenamiento distinta.
La fusin es necesaria.

CREATE TABLESPACE userdata


DATAFILE '/u01/oradata/userdata01.dbf'
SIZE 500M EXTENT MANAGEMENT DICTIONARY
DEFAULT STORAGE
(initial 1M NEXT 1M PCTINCREASE 0);

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Migracin de un Tablespace SYSTEM
Gestionado por un Diccionario

Migre un tablespace SYSTEM gestionado por un


diccionario a un tablespace gestionado localmente:

DBMS_SPACE_ADMIN.
TABLESPACE_MIGRATE_TO_LOCAL('SYSTEM');

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tablespace de Deshacer

Se utiliza para almacenar segmentos de deshacer


No puede contener ningn otro objeto
Las extensiones se gestionan de forma local
Slo puede utilizar las clusulas DATAFILE y
EXTENT MANAGEMENT
CREATE UNDO TABLESPACE undo1
DATAFILE '/u01/oradata/undo01.dbf' SIZE 40M;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tablespaces Temporales

Se utilizan para operaciones de ordenacin


Pueden compartirlos mltiples usuarios
No pueden contener ningn objeto permanente
Se recomiendan las extensiones gestionadas
localmente
CREATE TEMPORARY TABLESPACE temp
TEMPFILE '/u01/oradata/temp01.dbf' SIZE 20M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 4M;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tablespace Temporal por Defecto

Especifica un tablespace temporal por defecto para


toda la base de datos
Elimina la necesidad de utilizar el tablespace
SYSTEM para almacenar datos temporales
Se puede crear con los comandos:
CREATE DATABASE
ALTER DATABASE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de un Tablespace Temporal por
Defecto

Durante la creacin de la base de datos:


CREATE DATABASE DBA01
LOGFILE
GROUP 1 ('/$HOME/ORADATA/u01/redo01.log') SIZE 100M,
GROUP 2 ('/$HOME/ORADATA/u02/redo02.log') SIZE 100M,
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
DATAFILE '/$HOME/ORADATA/u01/system01.dbf' SIZE 325M
TABLESPACE undotbs
UNDO
DATAFILE '/$HOME/ORADATA/u02/undotbs01.dbf' SIZE 200
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE '/$HOME/ORADATA/u03/temp01.dbf' SIZE 4M
CHARACTER SET US7ASCII

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de un Tablespace Temporal por
Defecto
Tras la creacin de la base de datos:
ALTER DATABASE
DEFAULT TEMPORARY TABLESPACE default_temp2;

Para buscar el tablespace temporal por defecto para


la base de datos, consulte DATABASE_PROPERTIES
SELECT * FROM DATABASE_PROPERTIES;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Restricciones del Tablespace
Temporal por Defecto

Los tablespaces temporales por defecto no se pueden:


Borrar hasta que est disponible el nuevo
tablespace por defecto
Poner offline
Modificar para convertirlos en tablespaces
permanentes

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tablespaces de Slo Lectura

Utilice el siguiente comando para colocar un


tablespace en modo de slo lectura:
ALTER TABLESPACE userdata READ ONLY;

Genera un punto de control


Los datos slo estn disponibles para operaciones de
lectura
Se pueden borrar objetos del tablespace

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Puesta de un Tablespace Offline

No est disponible para el acceso a datos


Tablespaces que no se pueden poner offline:
Tablespace SYSTEM
Tablespaces con segmentos de deshacer activos
Tablespace temporal por defecto
Para poner un tablespace offline:
ALTER TABLESPACE userdata OFFLINE;

Para poner un tablespace online:


ALTER TABLESPACE userdata ONLINE;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cambio de los Valores de Almacenamiento

Uso del comando ALTER TABLESPACE para cambiar


los valores de almacenamiento:
ALTER TABLESPACE userdata MINIMUM EXTENT 2M;

ALTER TABLESPACE userdata


DEFAULT STORAGE (INITIAL 2M NEXT 2M
MAXEXTENTS 999);

No se pueden modificar los valores de


almacenamiento de los tablespaces gestionados
localmente.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cambio de Tamao de un Tablespace

Se puede modificar el tamao de un tablespace de las


siguientes formas:
Cambiando el tamao de un archivo de datos:
De forma automtica con AUTOEXTEND
De forma manual con ALTER TABLESPACE
Agregando un archivo de datos con el comando
ALTER TABLESPACE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Activacin de la Extensin Automtica
de Archivos de Datos

Se pueden cambiar de tamao automticamente


con los siguientes comandos:
CREATE DATABASE
CREATE TABLESPACE
ALTER TABLESPACE ADD DATAFILE
Ejemplo:
CREATE TABLESPACE user_data
DATAFILE
'/u01/oradata/userdata01.dbf' SIZE 200M
AUTOEXTEND ON NEXT 10M MAXSIZE 500M;

Consulte la vista DBA_DATA_FILES para determinar


si AUTOEXTEND est activado.
Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.
Cambio de Tamao Manual de un Archivo
de Datos

Aumente o disminuya el tamao de un archivo de datos


manualmente con ALTER DATABASE
Al cambiar de tamao un archivo de datos, se agrega
ms espacio sin agregar ms archivos de datos.
El cambio de tamao manual de un archivo de datos
reclama el espacio no utilizado de la base de datos.
Ejemplo:
ALTER DATABASE
DATAFILE '/u03/oradata/userdata02.dbf'
RESIZE 200M;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Adicin de Archivos de Datos a un
Tablespace

Aumenta el espacio asignado a un tablespace


agregando archivos de datos adicionales
La clusula ADD DATAFILE se utiliza para agregar
un archivo de datos
Ejemplo:
ALTER TABLESPACE user_data
ADD DATAFILE '/u01/oradata/userdata03.dbf'
SIZE 200M;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Mtodos para Mover Archivos de Datos

ALTER TABLESPACE
El tablespace debe estar offline.
Deben existir archivos de datos de destino.
ALTER TABLESPACE userdata RENAME
DATAFILE '/u01/oradata/userdata01.dbf'
TO '/u02/oradata/userdata01.dbf';

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Mtodos para Mover Archivos de Datos

ALTER DATABASE
Se debe montar la base de datos.
Debe existir un archivo de datos de destino.

ALTER DATABASE RENAME


FILE '/u01/oradata/system01.dbf'
TO '/u03/oradata/system01.dbf';

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Borrado de Tablespaces

Un tablespace no se puede borrar si:


Es el tablespace SYSTEM
Tiene segmentos activos
INCLUDING CONTENTS borra los segmentos.
INCLUDING CONTENTS AND DATAFILES suprime
los archivos de datos.
CASCADE CONSTRAINTS borra todas las
restricciones de integridad referencial.
DROP TABLESPACE userdata
INCLUDING CONTENTS AND DATAFILES;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Tablespaces con OMF

Defina el parmetro DB_CREATE_FILE_DEST de una de las


siguientes formas:
Archivo de parmetros de inicializacin
Definido dinmicamente con el comando ALTER SYSTEM
ALTER SYSTEM SET
db_create_file_dest = '/u01/oradata/dba01';

Al crear el tablespace:
Se crea automticamente el archivo de datos y se coloca en
DB_CREATE_FILE_DEST
El tamao por defecto es 100 MB
AUTOEXTEND est definido en UNLIMITED

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Tablespaces con OMF

Creacin de un tablespace con OMF:


CREATE TABLESPACE text_data DATAFILE SIZE 20M;
Adicin de un archivo de datos OMF a un tablespace
existente:
ALTER TABLESPACE text_data ADD DATAFILE;

Cambio dinmico de la ubicacin de archivo por defecto:


ALTER SYSTEM SET
db_create_file_dest = '/u01/oradata/dba01';
El borrado de un tablespace incluye la supresin de los
archivos del sistema operativo:

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Obtencin de Informacin acerca de
Tablespaces

Se puede obtener informacin acerca de tablespaces


y archivos de datos consultando lo siguiente:
Informacin acerca del tablespace:
DBA_TABLESPACES
V$TABLESPACE
Informacin acerca del archivo de datos:
DBA_DATA_FILES
V$DATAFILE
Informacin acerca del archivo temporal:
DBA_TEMP_FILES
V$TEMPFILE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Utilizar tablespaces para separar datos
Crear diferentes tipos de tablespaces
Gestionar tablespaces
Gestionar tablespaces con OMF
Obtener informacin acerca de tablespaces

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 8: Visin General

Esta prctica abarca los siguientes temas:


Creacin de tablespaces
Modificacin de tablespaces
Configuracin y creacin de un tablespace con OMF

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Relaciones y Estructura de
Almacenamiento

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Describir la estructura lgica de la base de datos
Enumerar los tipos de segmentos y sus usos
Enumerar las palabras clave que controlan el uso
del espacio de bloques
Obtener informacin acerca de la estructura de
almacenamiento

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Relaciones y Estructura de
Almacenamiento
Base de datos
PROD
TABLESPACES
SYSTEM USER_DATA RBS TEMP

ARCHIVOS DE DISK2/ DISK3/ DISK1/ DISK1/


DATOS USER2.dbf TEMP.dbf
DISK1/SYS1.dbf USER1.dbf UNDO1.dbf
SEGMENTOS S_DEPT S_EMP RBS1 RBS2 RBS1 RBS2
S_DEPT S_EMP (Continu
FIRST_N (Continua
(Continucin) Temp
Tabla ndice acin)
AME
ndice
acin)
D.D. D.D. Seg. Seg.
Seg.
Seg.Seg. Seg. RB RB Seg. RB Seg.
Seg. Seg. Seg.
RB
RB Datos Datos Seg. ndice Temp.
Datos ndice Datos

EXTENSIONES
1 2 1 2 1 2 1 1 2 2 1 LIBRE 1 1 2 2 1

Oracle DATA BLOCKS

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tipos de Segmentos

Tabla Particin
de tabla

Agrupamiento ndice

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tipos de Segmentos

Tabla organizada Particin


por ndice de ndices

Segmento Segmento
de deshacer temporal

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tipos de Segmentos

Segmen Tabla
to LOB anidada

Segmento
de arranque

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prioridad de Clusulas de
Almacenamiento

Valor por defecto de Oracle

Tablespace

Segmento

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Asignacin y Desasignacin de
Extensiones

Una extensin es un fragmento de espacio utilizado


por un segmento en un tablespace.
Se asigna una extensin cuando el segmento:
Se crea
Se ampla
Se modifica
Se desasigna una extensin cuando el segmento:
Se borra
Se modifica
Se trunca

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Extensiones Utilizadas y Libres

Archivo de datos

Cabecera de Extensin Extensin


archivo utilizada libre

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Bloque de Base de Datos

Unidad mnima de E/S


Formado por uno o ms bloques del sistema operativo
Definido cuando se crea el tablespace
DB_BLOCK_SIZE es el tamao de bloque por defecto

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Soporte para Mltiples Tamaos de Bloque

Una base de datos se puede crear con un tamao


de bloque estndar y un mximo de cuatro tamaos
de bloque no estndar.
Los tamaos de bloque pueden tener cualquier
valor multiplicado por dos entre 2 y 32 KB.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tamao de Bloque Estndar

Se define al crear la base de datos con el parmetro


DB_BLOCK_SIZE y no se puede modificar sin volver
a crear la base de datos
Se utiliza para los tablespaces SYSTEM y TEMPORARY
DB_CACHE_SIZE especifica el tamao de la cach de
buffers DEFAULT para el tamao de bloque estndar:
Tamao mnimo = un grnulo (4 o 16 MB)
Valor por defecto = 48 MB

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tamao de Bloque no Estndar

Configure cachs adicionales con los siguientes


parmetros dinmicos:
DB_2K_CACHE_SIZE para bloques de 2 KB
DB_4K_CACHE_SIZE para bloques de 4 KB
DB_8K_CACHE_SIZE para bloques de 8 KB
DB_16K_CACHE_SIZE para bloques de 16 KB
DB_32K_CACHE_SIZE para bloques de 32 KB
DB_nK_CACHE_SIZE no est permitido
si nK es el tamao de bloque estndar.
El tamao mnimo para cada cach es un grnulo.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de Tablespaces con un
Tamao de Bloque no Estndar

CREATE TABLESPACE tbs_1


DATAFILE 'tbs_1.dbf'
SIZE 10M BLOCKSIZE 4K;

DESCRIBE dba_tablespaces
Name Null? Type
------------------ -------- ------------
TABLESPACE_NAME NOT NULL VARCHAR2(30)
BLOCK_SIZE NOT NULL NUMBER
...

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Reglas de Especificacin de Tamao de
Mltiples Bloques

Todas las particiones de un objeto particionado


deben residir en tablespaces del mismo tamao de
bloque.
Todos los tablespaces temporales, incluidos los
permanentes que se utilizan como tablespaces
temporales por defecto, deben tener el tamao de
bloque estndar.
Los segmentos LOB fuera de lnea y los
desbordamientos de tablas organizadas por ndices
se pueden almacenar en un tablespace que tenga
un tamao de bloque distinto al de la tabla base.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Contenido del Bloque de la Base de Datos

Cabecera

Espacio libre

Datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Parmetros de Utilizacin
del Espacio de Bloques

INITRANS

MAXTRANS

PCTFREE

PCTUSED

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Bloques de Datos

Existen dos mtodos para gestionar los bloques de


datos:
Gestin automtica del espacio de segmento
Gestin manual

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin Automtica del Espacio de
Segmento

Es un mtodo de gestin del espacio libre de los


segmentos de la base de datos.
El seguimiento del espacio libre y el utilizado dentro
de un segmento se realiza con bitmaps en lugar de
con listas de bloques libres.
Este mtodo ofrece:
Facilidad de gestin
Mejor uso del espacio
Mejor rendimiento para operaciones INSERT
simultneas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin Automtica del Espacio de
Segmento

Los segmentos de bitmap contienen un bitmap que


describe el estado de cada bloque del segmento
con respecto a su espacio disponible.
El mapa est ubicado en un juego independiente de
bloques llamados BMB (bloques de bitmaps).
Al insertar una fila nueva, el servidor busca en el
mapa un bloque con espacio suficiente.
Cuando se modifica la cantidad de espacio
disponible de un bloque, su nuevo estado se refleja
en el bitmap.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Configuracin de la Gestin Automtica
del Espacio de Segmento

La gestin automtica del espacio de segmento


slo se puede activar a nivel del tablespace y para
tablespaces gestionados localmente.
CREATE TABLESPACE data02
DATAFILE /u01/oradata/data02.dbf SIZE 5M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 64K
SEGMENT SPACE MANAGEMENT AUTO;

Tras crear un tablespace, las especificaciones se


aplican a todos los segmentos creados en dicho
tablespace.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin Manual de Bloques de Datos

Permite configurar bloques de datos manualmente


con parmetros como:
PCTFREE
PCTUSED
FREELIST
Este mtodo era el nico disponible en las
versiones anteriores de Oracle

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Uso del Espacio de Bloques
PCTFREE=20 PCTUSED=40

Inserciones
80%
Inserciones

(fuera de lista de bloques libres)


1
2

Inserciones 80%
Insercin
40% (en lista de bloques libres)

3 4

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Obtencin de Informacin acerca del
Almacenamiento

Para obtener informacin acerca del almacenamiento,


se pueden consultar las siguientes vistas:
DBA_EXTENTS
DBA_SEGMENTS
DBA_TABLESPACES
DBA_DATA_FILES
DBA_FREE_SPACE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Utilizar tablespaces para:
Separar segmentos con el fin de facilitar la administracin
Controlar la asignacin de espacio del usuario
Clasificar los segmentos por el tipo de informacin que
se almacena en ellos
Determinar los tamaos de las extensiones mediante la
clusula de almacenamiento
Controlar el uso del espacio de bloques
Obtener informacin acerca de la estructura de
almacenamiento

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 9: Visin General

Esta prctica abarca la identificacin y obtencin de


informacin acerca de los diversos tipos de
estructuras de almacenamiento de la base de datos.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Datos de Deshacer

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Describir el objetivo de los datos de deshacer
Implementar la gestin de SMU automtico
Crear y configurar segmentos de deshacer
Obtener informacin acerca de los segmentos de
deshacer

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Datos de Deshacer

Existen dos mtodos para gestionar los datos de


deshacer:
Gestin de SMU Automtico
Gestin de SMU Manual
El trmino deshacer es equivalente al trmino
rollback utilizado en versiones anteriores.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Segmento de Deshacer

Imagen antigua

Tabla

Imagen
nueva

Segmento de
deshacer

Actualizar la transaccin

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Segmentos de Deshacer: Objetivo

Rollback de transacciones

Recuperacin de Segmento de Consistencia de


transacciones deshacer lectura

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Consistencia de Lectura

SELECT *
Tabla FROM tabla

Imagen nueva
Imagen al inicio de la sentencia

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tipos de Segmentos de Deshacer

SYSTEM: Utilizado para los objetos del tablespace SYSTEM


No SYSTEM: Se utiliza para los objetos de otros
tablespaces:
Modo automtico: Requiere un tablespace UNDO
Modo manual:
Privado: Lo adquiere una nica instancia
Pblico: Lo adquiere cualquier instancia
Diferido: Se utiliza cuando los tablespaces se ponen offline
de forma inmediata, temporal o con fines de recuperacin

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de SMU
Automtico: Conceptos

Los datos de deshacer se gestionan con un


tablespace UNDO.
Se asigna un tablespace UNDO por instancia con
espacio suficiente para la carga de trabajo de la
instancia.
Oracle Server mantiene automticamente los datos
de deshacer en el tablespace UNDO.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de SMU
Automtico: Configuracin

Configure dos parmetros en el archivo de inicializacin:


UNDO_MANAGEMENT
UNDO_TABLESPACE
Cree como mnimo un tablespace UNDO.

undo1db01.dbf

Archivo de Tablespace UNDO


inicializacin

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de SMU Automtico: Parmetros
de Inicializacin

UNDO_MANAGEMENT: Especifica si el sistema debe


utilizar el modo AUTO o MANUAL
UNDO_TABLESPACE: Especifica el uso de un
tablespace UNDO concreto

UNDO_MANAGEMENT=AUTO
UNDO_TABLESPACE=UNDOTBS

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de SMU Automtico:
Tablespace UNDO

Cree el tablespace UNDO con la base de datos agregando una


clusula al comando CREATE DATABASE:
CREATE DATABASE db01
. . .
UNDO TABLESPACE undo1
DATAFILE '/u01/oradata/undoldb01.dbf' SIZE 20M
AUTOEXTEND ON

Tambin puede crearlo posteriormente con el comando


CREATE UNDO TABLESPACE:
CREATE UNDO TABLESPACE undo1
DATAFILE '/u01/oradata/undo1db01.dbf'
SIZE 20M;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de SMU Automtico:
Modificacin de un Tablespace UNDO

El comando ALTER TABLESPACE puede realizar


cambios en los tablespaces UNDO.
En el siguiente ejemplo se agrega otro archivo de
datos al tablespace UNDO:

ALTER TABLESPACE undotbs


ADD DATAFILE '/u01/oradata/undotbs2.dbf'
SIZE 30M
AUTOEXTEND ON;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de SMU Automtico:
Cambio de Tablespaces UNDO

Puede cambiar de un tablespace UNDO a otro.


Slo puede asignar un tablespace UNDO a una base
de datos al mismo tiempo.
Puede existir ms de un tablespace UNDO en una
instancia, pero slo uno puede estar activo.
Utilice el comando ALTER SYSTEM para cambiar
dinmicamente entre tablespaces UNDO.

ALTER SYSTEM SET UNDO_TABLESPACE=UNDOTBS2;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de un SMU Automtico:
Borrado de un Tablespace UNDO

El comando DROP TABLESPACE borra un tablespace UNDO.

DROP TABLESPACE UNDOTBS2;

Un tablespace UNDO slo se puede borrar si no hay


ninguna instancia que lo est utilizando actualmente.
Para borrar un tablespace UNDO activo:
Cambie a un tablespace UNDO nuevo.
Borre el tablespace una vez que se hayan terminado todas las
transacciones actuales.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de SMU Automtico:
Otros Parmetros

Parmetro UNDO_SUPPRESS_ERRORS:
Si se define en TRUE, este parmetro suprime errores
mientras intenta ejecutar operaciones manuales en el
modo AUTO.
Parmetro UNDO_RETENTION:
Este parmetro controla la cantidad de datos de
deshacer que se debe retener para que la lectura sea
consistente.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Estadsticas de Datos de Deshacer

SELECT end_time,begin_time,undoblks
FROM v$undostat;
END_TIME BEGIN_TIME UNDO
------------------ ------------------ -----
22-JAN-01 13:44:18 22-JAN-01 13:43:04 19
22-JAN-01 13:43:04 22-JAN-01 13:33:04 1474
22-JAN-01 13:33:04 22-JAN-01 13:23:04 1347
22-JAN-01 13:23:04 22-JAN-01 13:13:04 1628
22-JAN-01 13:13:04 22-JAN-01 13:03:04 2249
22-JAN-01 13:03:04 22-JAN-01 12:53:04 1698
22-JAN-01 12:53:04 22-JAN-01 12:43:04 1433
22-JAN-01 12:43:04 22-JAN-01 12:33:04 1532
22-JAN-01 12:33:04 22-JAN-01 12:23:04 1075

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de SMU Automtico:
Especificacin del Tamao de un
Tablespace UNDO

Para determinar el tamao de un tablespace UNDO, son


necesarios los siguientes tres datos:
(UR) UNDO_RETENTION en segundos
(UPS) Nmero de bloques de datos de deshacer
generados por segundo
(DBS) La sobrecarga vara en funcin del tamao de
la extensin y del archivo (db_block_size)

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de SMU Automtico:
Cuota de Deshacer

Las transacciones largas y las que no se escriben


correctamente pueden consumir recursos muy valiosos.
Con la cuota de deshacer, puede agrupar a los usuarios y
asignar un lmite de espacio de deshacer mximo al grupo.
UNDO_POOL, una directiva de Resource Manager, define la
cantidad de espacio permitida para un grupo de recursos.
Si un grupo supera el lmite, no se permiten transacciones
nuevas para dicho grupo hasta que las transacciones
actuales que se estn finalizando o interrumpiendo liberen
el espacio de deshacer.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Obtencin de Informacin acerca de
Segmentos de Deshacer

Para obtener informacin acerca de los segmentos


de deshacer, consulte las siguientes vistas:
DBA_ROLLBACK_SEGS
Vistas Dinmicas de Rendimiento
V$ROLLNAME
V$ROLLSTAT
V$UNDOSTAT
V$SESSION
V$TRANSACTION

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Configurar la Gestin de SMU Automtico
Crear un tablespace UNDO
Establecer correctamente el tamao de un
tablespace UNDO
Obtener informacin acerca de los segmentos de
deshacer

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 10: Visin General

Esta prctica abarca los siguientes temas:


Creacin de un tablespace UNDO
Cambio entre tablespaces UNDO
Borrado de un tablespace UNDO

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Tablas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Identificar los distintos mtodos de almacenamiento de
datos
Describir los tipos de dato Oracle
Distinguir entre un ROWID ampliado y uno restringido
Describir la estructura de una fila
Crear tablas regulares y temporales
Gestionar las estructuras de almacenamiento de una tabla
Reorganizar, truncar y borrar una tabla
Borrar una columna de una tabla

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Almacenamiento de Datos de Usuario

Tabla regular Tabla


particionada

Tabla organizada Agrupamiento


por ndice

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tipos de Dato Incorporados de Oracle
Tipo de dato

Definidos por el usuario Incorporados

Escalar Recopilacin Relacin


CHAR(N), NCHAR(N)
VARCHAR2(N),
VARRAY REF
NVARCHAR2(N)
NUMBER(P,S)
TABLE
DATE
TIMESTAMP
RAW(N)
BLOB, CLOB,
NCLOB, BFILE
LONG, LONG RAW
ROWID, UROWID

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Formato ROWID

Formato ROWID ampliado

OOOOOO FFF BBBBBB RRR

Nmero de Nmero de Nmero de Nmero de


objeto de datos archivo relativo bloque fila

Formato ROWID restringido

BBBBBBBB . RRRR . FFFF

Nmero de bloque Nmero de fila Nmero de archivo

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Estructura de una Fila

Cabecera de fila
Longitud de columna
Bloque de base
de datos Valor de columna

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de una Tabla

CREATE TABLE hr.employees(


employee_id NUMBER(6),
first_name VARCHAR2(20),
last_name VARCHAR2(25),
email VARCHAR2(25),
phone_number VARCHAR2(20),
hire_date DATE DEFAULT SYSDATE,
job_id VARCHAR2(10),
salary NUMBER(8,2),
commission_pct NUMBER (2,2),
manager_id NUMBER(6),
department_id NUMBER(4))
TABLESPACE USERS;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de una Tabla: Instrucciones

Coloque las tablas en tablespaces independientes.


Utilice tablespaces gestionados localmente para
evitar la fragmentacin.
Utilice pocos tamaos de extensin estndar para
las tablas con el fin de reducir la fragmentacin del
tablespace.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de Tablas Temporales

Se crean con la clusula GLOBAL TEMPORARY:


CREATE GLOBAL TEMPORARY TABLE
hr.employees_temp
AS SELECT * FROM hr.employees;

Las tablas slo retienen los datos durante una


transaccin o una sesin.
Los bloqueos DML no se adquieren en los datos.
Se pueden crear ndices, vistas y disparadores en
las tablas temporales.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Definicin de PCTFREE y PCTUSED

Clculo de PCTFREE
(Tamao Medio de la Fila - Tamao Inicial de la Fila) * 100

Tamao Medio de la Fila

Clculo de PCTUSED
Tamao Medio de la Fila * 100
100 - PCTFREE -
Espacio de Datos Disponible

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Migracin y Encadenamiento de Filas

Antes de la Despus de la
actualizacin actualizacin

Puntero

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cambio de los Parmetros de Utilizacin
de Bloques y Almacenamiento

ALTER TABLE hr.employees


PCTFREE 30
PCTUSED 50
STORAGE(NEXT 500K
MINEXTENTS 2
MAXEXTENTS 100);

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Asignacin Manual de Extensiones

ALTER TABLE hr.employees


ALLOCATE EXTENT (SIZE 500K
DATAFILE /DISK3/DATA01.DBF);

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Reorganizacin de una Tabla no
Particionada

ALTER TABLE hr.employees


MOVE TABLESPACE data1;
Cuando se reorganiza una tabla no particionada, se
mantiene su estructura, pero no su contenido.
Se utiliza para mover una tabla a un tablespace
diferente o para reorganizar las extensiones.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Truncamiento de una Tabla

TRUNCATE TABLE hr.employees;

Al truncar una tabla se borran todas sus filas y se


libera espacio utilizado.
Tambin se truncan los ndices correspondientes.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Borrado de una Tabla

DROP TABLE hr.departments


CASCADE CONSTRAINTS;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Borrado de una Columna

Al eliminar una columna de una tabla:

ALTER TABLE hr.employees


DROP COLUMN comments
CASCADE CONSTRAINTS CHECKPOINT 1000;
Se elimina la longitud y los datos de columna de
cada fila y se libera espacio en el bloque de datos.
Se tarda bastante tiempo en borrar una columna de
una tabla de gran tamao.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cambio de Nombre de una Columna

Cambio de nombre de una columna de una tabla:

ALTER TABLE hr.employees


RENAME COLUMN hire_date
TO start_date;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Uso de la Opcin UNUSED

Marque una columna como no utilizada:


ALTER TABLE hr.employees
SET UNUSED COLUMN comments CASCADE
CONSTRAINTS;

Borre las columnas no utilizadas:


ALTER TABLE hr.employees
DROP UNUSED COLUMNS CHECKPOINT 1000;

Contine la operacin de borrado de columnas:


ALTER TABLE hr.employees
DROP COLUMNS CONTINUE CHECKPOINT 1000;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Obtencin de Informacin acerca de las
Tablas

Para obtener informacin acerca de las tablas,


consulte las siguientes vistas:
DBA_TABLES
DBA_OBJECTS

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Distinguir entre un ROWID ampliado y uno restringido
Describir la estructura de una fila
Crear tablas regulares y temporales
Gestionar las estructuras de almacenamiento de una
tabla
Reorganizar, truncar y borrar una tabla
Borrar una columna de una tabla
Obtener informacin acerca de las tablas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 11: Visin General

Esta prctica abarca los siguientes temas:


Creacin de una tabla
Cmo ver, marcar como no utilizadas y borrar
columnas de una tabla
Asignacin manual de extensiones
Truncamiento de una tabla
Obtencin de informacin acerca de las tablas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de ndices

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Enumerar los diversos tipos de ndices y sus usos
Crear diferentes tipos de ndices
Reorganizar ndices
Mantener ndices
Controlar el uso de un ndice
Obtener informacin acerca de los ndices

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Clasificacin de ndices

Lgico:
De columna nica o concatenado
nico o no nico
Basado en funcin
De dominio
Fsico:
Particionado o no particionado
B-Tree: Clave normal o hacia atrs
Bitmap

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


ndice B-Tree

Entrada de ndice

Raz

Derivacin

Cabecera de entrada de ndice


Hoja Longitud de columna clave
Valor de columna clave
ROWID

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


ndices de Bitmap

Tabla Archivo 3
Bloque 10

Bloque 11

ndice Bloque 12

ROWID ROWID
clave inicial final bitmap
<Blue, 10.0.3, 12.8.3, 1000100100010010100>
<Green, 10.0.3, 12.8.3, 0001010000100100000>
<Red, 10.0.3, 12.8.3, 0100000011000001001>
<Yellow, 10.0.3, 12.8.3, 0010001000001000010>

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Comparacin entre ndices
B-Tree y de Bitmap

B-Tree Bitmap
Idneo para columnas de elevada Idneo para columnas de baja
cardinalidad cardinalidad
Actualiza las claves a un costo Las actualizaciones de las columnas
relativamente bajo clave son muy costosas
Ineficaz para las consultas Eficaces para las consultas
que utilizan predicados OR que utilizan predicados OR

til para OLTP til para los almacenes de datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de ndices B-Tree

CREATE INDEX hr.employees_last_name_idx


ON hr.employees(last_name)
PCTFREE 30
STORAGE(INITIAL 200K NEXT 200K
PCTINCREASE 0 MAXEXTENTS 50)
TABLESPACE indx;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de ndices: Instrucciones

Equilibre las necesidades de la consulta y de DML.


Coloque los ndices en tablespaces independientes.
Utilice tamaos de extensin uniformes: Mltiplos
de cinco bloques o el tamao MINIMUM EXTENT
para los tablespaces.
Piense en la posibilidad de utilizar NOLOGGING para
los ndices de gran tamao.
INITRANS normalmente debera ser mayor en los
ndices que en las tablas correspondientes.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de ndices de Bitmap

CREATE BITMAP INDEX orders_region_id_idx


ON orders(region_id)
PCTFREE 30
STORAGE(INITIAL 200K NEXT 200K
PCTINCREASE 0 MAXEXTENTS 50)
TABLESPACE indx;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cambio de Parmetros de
Almacenamiento para ndices

ALTER INDEX employees_last_name_idx


STORAGE(NEXT 400K
MAXEXTENTS 100);

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Asignacin y Desasignacin del Espacio
del ndice

ALTER INDEX orders_region_id_idx


ALLOCATE EXTENT (SIZE 200K
DATAFILE /DISK6/indx01.dbf);

ALTER INDEX orders_id_idx


DEALLOCATE UNUSED;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Reconstruccin de ndices

Utilice el comando ALTER INDEX para:


Mover un ndice a un tablespace diferente
Mejorar el uso del espacio al eliminar las entradas
suprimidas
ALTER INDEX orders_region_id_idx REBUILD
TABLESPACE indx02;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Reconstruccin de ndices Online

Los ndices se pueden reconstruir con los bloqueos


de tabla mnimos.

ALTER INDEX orders_id_idx REBUILD ONLINE;

Existen algunas restricciones.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Fusin de ndices

Antes de la fusin Despus de la fusin

ALTER INDEX orders_id_idx COALESCE;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Comprobacin de la Validez de los ndices

ANALYZE INDEX orders_region_id_idx


VALIDATE STRUCTURE;

INDEX_STATS

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Borrado de ndices

Borre y vuelva a crear un ndice antes de realizar


cargas en bloque.
Borre los ndices que no se necesiten con
frecuencia y crelos cuando sea necesario.
Borre y vuelva a crear los ndices no vlidos.
DROP INDEX hr.departments_name_idx;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Identificacin de ndices no Utilizados

Para comenzar el control del uso de un ndice:


ALTER INDEX hr.dept_id_idx
MONITORING USAGE

Para interrumpir el control del uso de un ndice:


ALTER INDEX hr.dept_id_idx
NOMONITORING USAGE

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Obtencin de Informacin acerca de los
ndices

Para obtener informacin acerca de los ndices,


consulte las siguientes vistas:
DBA_INDEXES: Proporciona informacin acerca de
los ndices
DBA_IND_COLUMNS: Proporciona informacin acerca
de las columnas indexadas
V$OBJECT_USAGE: Proporciona informacin acerca
del uso de un ndice

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Crear diferentes tipos de ndices
Reorganizar ndices
Borrar ndices
Obtener informacin acerca de los ndices en el
diccionario de datos
Iniciar y finalizar el control del uso de los ndices
Obtener informacin acerca de los ndices

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 12: Visin General

Esta prctica abarca los siguientes temas:


Creacin de un ndice en las columnas de una tabla
Traspaso del ndice a otro tablespace
Borrado de un ndice
Obtencin de informacin acerca de los ndices

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Mantenimiento de la Integridad
de los Datos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Implementar las restricciones de integridad de los datos
Mantener las restricciones de integridad
Obtener informacin acerca de las restricciones

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Integridad de los Datos

Disparadores de Restriccin de
base de datos integridad
Datos

Cdigo de
aplicacin

Tabla

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Tipos de Restricciones

Constraint Descripcin

NOT NULL Especifica que una columna no puede contener valores nulos

UNIQUE Designa una columna o combinacin de columnas como


nica

PRIMARY KEY Designa una columna o combinacin de columnas como la


clave primaria de la tabla

FOREIGN KEY Designa una columna o combinacin de columnas como la


clave ajena de una restriccin de integridad referencial

CHECK Especifica una condicin que debe cumplir cada fila de la


tabla

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Estados de Restriccin

DISABLE DISABLE ENABLE ENABLE


NOVALIDATE VALIDATE NOVALIDATE VALIDATE

=
Datos nuevos Datos existentes

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Comprobacin de Restricciones

Sentencia DML

Comprueba las
restricciones no diferidas

COMMIT

Comprueba las
restricciones diferidas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Definicin de Restricciones
Inmediatas o Diferidas

Utilice la sentencia SET CONSTRAINTS para definir


las restricciones como DEFERRED o IMMEDIATE.
La sentencia ALTER SESSION tambin tiene
clusulas para definir restricciones como DEFERRED
o IMMEDIATE.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Forzado de las Claves nica y Primaria

S Hay algn S Es la S
Est activada ndice disponible restriccin Es el ndice
para utilizarlo? diferible? no nico?
la clave?

No No No/S

Utilizar un ndice existente


Es la S
restriccin
diferible?

No No

No utilizar
Crear un ndice nico Crear un ndice no nico
ningn ndice

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Consideraciones acerca de la Clave Ajena

Accin Deseada Solucin Adecuada

Borrar tabla principal Restricciones de cascada

Truncar la tabla principal Desactivar o borrar la clave ajena

Borrar el tablespace que Utilizar la clusula CASCADE


contiene la tabla principal CONSTRAINTS
Realizar operaciones DML Comprobar que el tablespace que
en la tabla secundaria contiene la clave principal est en lnea

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Definicin de Restricciones
al Crear una Tabla

CREATE TABLE hr.employee(


id NUMBER(7)
CONSTRAINT employee_id_pk PRIMARY KEY
DEFERRABLE
USING INDEX
STORAGE(INITIAL 100K NEXT 100K)
TABLESPACE indx,
last_name VARCHAR2(25)
CONSTRAINT employee_last_name_nn NOT NULL,
dept_id NUMBER(7))
TABLESPACE users;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Instrucciones para Definir Restricciones

Restricciones nicas y primarias:


Coloque ndices en un tablespace independiente.
Utilice ndices no nicos si las cargas en bloque
son frecuentes.
Claves ajenas de autoreferencia:
Defina o active claves ajenas despus de la carga
inicial.
Difiera la comprobacin de restricciones.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Activacin de Restricciones

No hay bloqueos en la tabla


ENABLE Las claves primarias y nicas
NOVALIDATE debern utilizar ndices no
nicos

ALTER TABLE hr.departments


ENABLE NOVALIDATE CONSTRAINT dept_pk;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Activacin de Restricciones

Bloquea la tabla
ENABLE Puede utilizar ndices
VALIDATE nicos o no nicos
Necesita datos de tabla
vlidos
ALTER TABLE hr.employees
ENABLE VALIDATE CONSTRAINT emp_dept_fk;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Cambio de Nombre de las Restricciones

Para cambiar el nombre de una restriccin, utilice:

ALTER TABLE employees


RENAME CONSTRAINT emp_dept_fk
TO employees_dept_fk;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Uso de la Tabla EXCEPTIONS

Cree la tabla EXCEPTIONS ejecutando el archivo de


comandos utlexcpt1.sql.
Ejecute la sentencia ALTER TABLE con la opcin
EXCEPTIONS.
Utilice una subconsulta en EXCEPTIONS para
encontrar filas con datos no vlidos.
Rectifique los errores.
Vuelva a ejecutar ALTER TABLE para activar la
restriccin.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Obtencin de Informacin acerca de las
Restricciones

Para obtener informacin acerca de las restricciones,


consulte las siguientes vistas:
DBA_CONSTRAINTS
DBA_CONS_COLUMNS

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Implementar la integridad de los datos
Utilizar una estrategia adecuada para crear y
mantener restricciones
Obtener informacin acerca de las restricciones

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 13: Visin General

Esta prctica abarca los siguientes temas:


Creacin de restricciones
Activacin de restricciones nicas
Creacin de una tabla EXCEPTIONS
Identificacin de las violaciones de restricciones
existentes en una tabla, correccin de los errores y
reactivacin de las restricciones

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de la Seguridad de
Contraseas y Recursos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Gestionar contraseas utilizando perfiles
Administrar perfiles
Controlar el uso de los recursos utilizando perfiles
Obtener informacin acerca de los lmites de los
recursos y las contraseas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Perfiles

Un perfil es un juego denominado de lmites de


recursos y contraseas.
Los perfiles se asignan a los usuarios mediante los
comandos CREATE USER o ALTER USER.
Los perfiles se pueden activar o desactivar.
Los perfiles se pueden relacionar con el perfil DEFAULT.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Contraseas

Historial de Bloqueo de
contraseas cuentas

Usuario Configuracin
de perfiles

Vencimiento y Verificacin de
antigedad contraseas
de contraseas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Activacin de la Gestin de Contraseas

Configure la gestin de contraseas utilizando perfiles


y asignndolos a los usuarios.
Bloquee, desbloquee y haga que venzan las cuentas
mediante los comandos CREATE USER o ALTER USER.
Siempre se fuerzan los lmites de contraseas.
Para activar la gestin de contraseas, ejecute el
archivo de comandos utlpwdmg.sql como usuario
SYS.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Bloqueo de Cuentas de Contraseas

Parmetro Descripcin
FAILED_LOGIN_ATTEMPTS Nmero de intentos de conexin fallidos
antes de que se bloquee la cuenta

PASSWORD_LOCK_TIME Nmero de das que est bloqueada


la cuenta despus del nmero especificado
de intentos de conexin fallidos

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Vencimiento y Antigedad de Contraseas

Parmetro Parmetro
PASSWORD_LIFE_TIME Das de duracin de la contrasea,
despus de los cuales vence

Das del perodo de gracia para


PASSWORD_GRACE_TIME cambiar la contrasea despus de la
primera conexin correcta, una vez
que la contrasea ha vencido

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Historial de Contraseas

Parmetro Descripcin
PASSWORD_REUSE_TIME Nmero de das que deben transcurrir
para que una contrasea se pueda volver a utilizar

PASSWORD_REUSE_MAX Nmero mximo de cambios necesarios para


que una contrasea se pueda volver a utilizar

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Verificacin de Contraseas

Parmetro Descripcin
PASSWORD_VERIFY_FUNCTION Funcin PL/SQL que realiza una
comprobacin de complejidad de
la contrasea antes de asignarla

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Funcin de Contrasea Proporcionada por
el Usuario

Esta funcin se debe crear en el esquema SYS y debe


tener la siguiente especificacin:

nombre_funcin(
parmetro_identificador_usuario IN VARCHAR2(30),
parmetro_contrasea IN VARCHAR2(30),
parmetro_contrasea_antigua IN VARCHAR2(30))
RETURN BOOLEAN

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Funcin de Verificacin de Contraseas
VERIFY_FUNCTION

Debe tener una longitud mnima de cuatro caracteres.


La contrasea no debe ser igual que el nombre del
usuario.
La contrasea debera tener, como mnimo, un carcter
alfabtico, uno numrico y uno especial.
La contrasea debera ser diferente a la anterior como
mnimo en tres letras.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de un Perfil:
Definicin de la Contrasea

CREATE PROFILE grace_5 LIMIT


FAILED_LOGIN_ATTEMPTS 3
PASSWORD_LOCK_TIME UNLIMITED
PASSWORD_LIFE_TIME 30
PASSWORD_REUSE_TIME 30
PASSWORD_VERIFY_FUNCTION
funcin_verificacin
PASSWORD_GRACE_TIME 5;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Modificacin de un Perfil: Definicin de la
Contrasea

Utilice el comando ALTER PROFILE para cambiar los


lmites de contraseas.
ALTER PROFILE default LIMIT
FAILED_LOGIN_ATTEMPTS 3
PASSWORD_LIFE_TIME 60
PASSWORD_GRACE_TIME 10;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Borrado de un Perfil: Definicin de la
Contrasea

Borre el perfil con el comando DROP PROFILE.


El perfil DEFAULT no se puede borrar.
CASCADE revoca el perfil al usuario al que se
haba asignado.

DROP PROFILE developer_prof;

DROP PROFILE developer_prof CASCADE;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Recursos

Los lmites de la gestin de recursos se pueden forzar


en el nivel de sesin, en el de llamada o en ambos.
Para definir lmites con perfiles, utilice el comando
CREATE PROFILE.
Active lmites de recursos con:
Parmetro de inicializacin RESOURCE_LIMIT
Comando ALTER SYSTEM

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Activacin de Lmites de Recursos

Defina el parmetro de inicializacin


RESOURCE_LIMIT en TRUE.
Fuerce los lmites de recursos activando el
parmetro con el comando ALTER SYSTEM.

ALTER SYSTEM SET RESOURCE_LIMIT=TRUE;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Definicin de Lmites de Recursos
en el Nivel de Sesin
Recurso Descripcin
CPU_PER_SESSION Total de tiempo de CPU en centsimas
de segundos
SESSIONS_PER_USER Nmero de sesiones simultneas que se
permiten para cada nombre de usuario
CONNECT_TIME Tiempo de conexin transcurrido en
minutos
IDLE_TIME Perodos de tiempo de inactividad en
minutos
LOGICAL_READS_PER Nmero de bloques de datos (lecturas
_SESSION fsicas y lgicas)
PRIVATE_SGA Espacio privado en la SGA en bytes
(slo para servidor compartido)

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Definicin de Lmites de Recursos
en el Nivel de Llamada

Recurso Descripcin

CPU_PER_CALL Tiempo de CPU por cada llamada en


centsimas de segundos

LOGICAL_READS_PER_CALL Nmero de bloques de datos que se


pueden leer en cada llamada

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Creacin de un Perfil:
Lmite de Recursos

CREATE PROFILE perfil_desarrollador LIMIT


SESSIONS_PER_USER 2
CPU_PER_SESSION 10000
IDLE_TIME 60
CONNECT_TIME 480;

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Recursos con el Gestor
de Recursos de la Base de Datos

Proporciona a Oracle Server un mayor control sobre las


decisiones de la gestin de recursos
Elementos del Gestor de Recursos de la Base de Datos:
Grupo de consumidores de recursos
Plan de recursos
Mtodo de asignacin de recursos
Directivas del plan de recursos
Utiliza el paquete DBMS_RESOURCE_MANAGER para crear y
mantener elementos
Requiere el privilegio ADMINISTER_RESOURCE_MANAGER

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Gestin de Recursos con el Gestor
de Recursos de la Base de Datos

Los planes de recursos especifican los grupos de


consumidores de recursos que pertenecen al plan.
Los planes de recursos contienen directivas para
determinar cmo se asignan los recursos entre los
grupos de consumidores.

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Directivas del Plan de Recursos

El Gestor de Recursos de la Base de Datos proporciona


varios medios de asignacin de recursos:
Mtodo CPU
Conjunto y cola de sesin activa
Lmite del grado de paralelismo
Cambio automtico de grupo de consumidor
Tiempo de ejecucin mximo estimado
Cuota de deshacer

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Obtencin de Informacin acerca de
Lmites de Recursos y Contraseas

Para obtener informacin acerca de lmites de recursos y


contraseas, consulte las siguientes vistas:
DBA_USERS
DBA_PROFILES

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Resumen

En esta leccin, ha aprendido a:


Administrar contraseas
Administrar perfiles
Obtener informacin acerca de los lmites de los
recursos y las contraseas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


Prctica 14: Visin General

Esta prctica abarca los siguientes temas:


Activacin de la gestin de contraseas
Definicin de perfiles y asignacin a los usuarios
Desactivacin de la gestin de contraseas

Copyright Oracle Corporation, 2002. Todos los Derechos Reservados.


15
Gestin de Usuarios

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Crear nuevos usuarios de base de datos
Modificar y borrar usuarios de base de datos
existentes
Controlar la informacin acerca de los usuarios
existentes
Obtener informacin acerca de usuarios

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Usuarios y Seguridad

Bloqueo de Tablespace
cuentas por defecto

Mecanismo Tablespace
de temporal
autenticacin
Dominio de
seguridad
Privilegios de Cuotas de
roles tablespace

Privilegios Lmites de
directos recursos

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Esquema de la Base de Datos
Un esquema es una Objetos de esquema
recopilacin Tablas
denominada de objetos. Disparadores
Cuando se crea un Restricciones
usuario, se crea el ndices
esquema Vistas
correspondiente. Secuencias
Un usuario slo se Unidades de programa
puede asociar a un almacenadas
esquema. Sinnimos
Los trminos nombre Tipos de dato definidos
por el usuario
de usuario y esquema
Enlaces de base de
se suelen utilizar de datos
manera intercambiable.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Lista de Comprobacin para Crear
Usuarios

Identifique los tablespaces en los que el usuario


debe almacenar los objetos.
Decida las cuotas de cada tablespace.
Asigne un tablespace por defecto y uno temporal.
Cree un usuario.
Otorgue privilegios y roles al usuario.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Creacin de un Nuevo Usuario:
Autenticacin de la Base de Datos

Defina la contrasea inicial:


CREATE USER aaron
IDENTIFIED BY soccer
DEFAULT TABLESPACE data
TEMPORARY TABLESPACE temp
QUOTA 15M ON data
QUOTA 10M ON users
PASSWORD EXPIRE;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Creacin de un Nuevo Usuario:
Autenticacin por medio del Sistema
Operativo
El parmetro de inicializacin OS_AUTHENT_PREFIX
especifica el formato de los nombres de usuario.
Toma el valor por defecto OPS$.
CREATE USER aaron
IDENTIFIED EXTERNALLY
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE temp
QUOTA 15m ON data;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Cambio de la Cuota de Usuario en
Tablespaces

Se pueden modificar las cuotas de tablespace de un


usuario en cualquiera de las siguientes situaciones:
Las tablas que son propiedad del usuario aumentan de forma
inesperada.
Se mejora una aplicacin y requiere tablas o ndices
adicionales.
Los objetos se reorganizan y se colocan en distintos
tablespaces.
Para modificar la cuota de tablespace de un usuario,
introduzca lo siguiente:

ALTER USER aaron


QUOTA 0 ON USERS;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Borrado de un Usuario

Utilice el comando DROP para eliminar un usuario.

DROP USER aaron;

Utilice la clusula CASCADE para borrar todos los


objetos del esquema, si dicho esquema contiene
objetos.

DROP USER aaron CASCADE;

Los usuarios que estn conectados actualmente a


Oracle Server no se pueden borrar.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Obtencin de Informacin acerca de los
Usuarios

Consulte las siguientes vistas para obtener


informacin acerca de los usuarios:
DBA_USERS
DBA_TS_QUOTAS

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Resumen

En esta leccin, ha aprendido a:


Crear usuarios especificando el mecanismo de
contrasea adecuado
Controlar el uso que hacen los usuarios del espacio
Obtener informacin acerca de usuarios

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Prctica 15: Visin General

Esta prctica abarca los siguientes temas:


Creacin de usuarios
Visualizacin de informacin del diccionario de
datos acerca de los usuarios
Eliminacin de cuotas de usuario

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


16
Gestin de Privilegios

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Identificar los privilegios del sistema y los de objeto
Otorgar y revocar privilegios
Obtener informacin acerca de los privilegios

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Gestin de Privilegios

Existen dos tipos de privilegios de usuario Oracle:


Sistema: Permite que los usuarios realicen acciones
concretas en la base de datos
Objeto: Permite que los usuarios accedan o
manipulen un objeto determinado

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Privilegios del Sistema

Existen ms de 100 privilegios del sistema distintos


La inclusin de la palabra clave ANY en un privilegio
significa que los usuarios tienen ese privilegio en
todos los esquemas.
El comando GRANT agrega un privilegio a un usuario
o un grupo de usuarios.
El comando REVOKE suprime los privilegios.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Privilegios del Sistema: Ejemplos
Categora Ejemplos
INDEX CREATE ANY INDEX
ALTER ANY INDEX
DROP ANY INDEX
TABLE CREATE TABLE
CREATE ANY TABLE
ALTER ANY TABLE
DROP ANY TABLE
SELECT ANY TABLE
UPDATE ANY TABLE
DELETE ANY TABLE
SESSION CREATE SESSION
ALTER SESSION
RESTRICTED SESSION
TABLESPACE CREATE TABLESPACE
ALTER TABLESPACE
DROP TABLESPACE
UNLIMITED TABLESPACE

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Otorgamiento de Privilegios del Sistema
Utilice el comando GRANT para otorgar privilegios
del sistema.
La persona a la que se otorga el privilegio puede
otorgar el privilegio del sistema con la opcin
ADMIN.

GRANT CREATE SESSION TO emi;

GRANT CREATE SESSION TO emi WITH ADMIN OPTION;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Privilegios
SYSDBA y SYSOPER
Categora Ejemplos
SYSOPER STARTUP
SHUTDOWN
ALTER DATABASE OPEN | MOUNT
ALTER DATABASE BACKUP CONTROLFILE TO
RECOVER DATABASE
ALTER DATABASE ARCHIVELOG
RESTRICTED SESSION
SYSDBA SYSOPER PRIVILEGES WITH ADMIN OPTION
CREATE DATABASE
ALTER TABLESPACE BEGIN/END BACKUP
RESTRICTED SESSION
RECOVER DATABASE UNTIL

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Restricciones de Privilegios del Sistema

El parmetro O7_DICTIONARY_ACCESSIBILITY:
Controla las restricciones de los privilegios SYSTEM
Si se define en TRUE, permite acceder a los objetos
del esquema SYS
El valor por defecto es FALSE y garantiza que los
privilegios del sistema que permiten acceder a
todos los esquemas no permitan el acceso al
esquema SYS

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Revocacin de Privilegios del Sistema

Utilice el comando REVOKE para eliminar un


privilegio del sistema de un usuario.
Los usuarios que dispongan de la opcin ADMIN
OPTION para el privilegio del sistema pueden
revocar privilegios del sistema.
Slo se pueden revocar los privilegios que se hayan
otorgado con el comando GRANT.

REVOKE CREATE TABLE FROM emi;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Revocacin de Privilegios del Sistema con
ADMIN OPTION
DBA Jeff Emi

GRANT

DBA Jeff Emi


REVOKE

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Privilegios de Objeto

Priv. de objeto Tabla Vista Secuencia Procedimiento


ALTER
DELETE
EXECUTE
INDEX
INSERT
REFERENCES
SELECT
UPDATE

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Otorgamiento de Privilegios de Objeto

Utilice el comando GRANT para otorgar privilegios


de objeto.
El otorgante debe tener el privilegio en su esquema
o debe tener GRANT OPTION.

GRANT EXECUTE ON dbms_output TO jeff;

GRANT UPDATE ON emi.customers TO jeff WITH


GRANT OPTION;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Revocacin de Privilegios de Objeto

Utilice el comando REVOKE para revocar privilegios


de objeto.
El usuario que revoca el privilegio debe ser el
otorgante original del privilegio de objeto que se va
a revocar.

REVOKE SELECT ON emi.orders FROM jeff;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Revocacin de Privilegios de Objeto
con GRANT OPTION
Bob Jeff Emi
GRANT

REVOKE Bob Jeff Emi

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Obtencin de Informacin acerca de los
Privilegios

Consulte las siguientes vistas para obtener


informacin acerca de los privilegios:
DBA_SYS_PRIVS
SESSION_PRIVS
DBA_TAB_PRIVS
DBA_COL_PRIVS

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Resumen

En esta leccin, ha aprendido a:


Identificar los privilegios del sistema y los de objeto
Otorgar y revocar privilegios
Obtener informacin acerca de los privilegios

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Prctica 16: Visin General

Esta prctica abarca los siguientes temas:


Creacin y otorgamiento de privilegios del sistema
a usuarios
Otorgamiento de privilegios de objeto a usuarios

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


17 Gestin de Roles

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Crear y modificar roles
Controlar la disponibilidad de los roles
Eliminar roles
Utilizar roles predefinidos
Obtener informacin acerca de los roles

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Roles

Usuarios
A B C

Roles HR_MGR HR_CLERK

Privilegios
SELECT ON INSERT ON
JOBS JOBS

CREATE CREATE UPDATE


TABLE SESSION ON JOBS

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Ventajas de los Roles

Ms facilidad en la gestin de privilegios


Gestin dinmica de privilegios
Disponibilidad selectiva de privilegios
Se pueden otorgar a travs del sistema operativo

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Creacin de Roles

Roles con la opcin ADMIN:


Sin identificar:
CREATE ROLE oe_clerk;

Por contrasea:
CREATE ROLE hr_clerk
IDENTIFIED BY bonus;

Identificados de forma externa:


CREATE ROLE hr_manager
IDENTIFIED EXTERNALLY;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Roles Predefinidos
Nombre del Rol Description
CONNECT, Estos roles se proporcionan para
RESOURCE, DBA que haya compatibilidad con
versiones anteriores
Privilegios para exportar
EXP_FULL_DATABASE la base de datos
Privilegios para importar
IMP_FULL_DATABASE la base de datos
Privilegios DELETE en
DELETE_CATALOG_ROLE tablas del diccionario de datos

Privilegio EXECUTE en
EXECUTE_CATALOG_ROLE paquetes del diccionario de datos

Privilegio SELECT en tablas


SELECT_CATALOG_ROLE del diccionario de datos

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Modificacin de Roles

ALTER ROLE modifica el mtodo de autenticacin.


Para modificar los roles, es necesario tener la
opcin ADMIN o el privilegio ALTER ANY ROLE.

ALTER ROLE oe_clerk


IDENTIFIED BY order;

ALTER ROLE hr_clerk


IDENTIFIED EXTERNALLY;

ALTER ROLE hr_manager


NOT IDENTIFIED;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Asignacin de Roles

Utilice el comando GRANT para asignar un rol.


GRANT oe_clerk TO scott;

GRANT hr_clerk TO hr_manager;

GRANT hr_manager TO scott WITH ADMIN OPTION;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Establecimiento de Roles por Defecto

Se pueden asignar muchos roles a un usuario.


Se puede asignar un rol por defecto a un usuario.
Limite el nmero de roles por defecto para un
usuario.

ALTER USER scott


DEFAULT ROLE hr_clerk, oe_clerk;

ALTER USER scott DEFAULT ROLE ALL;

ALTER USER scott DEFAULT ROLE ALL EXCEPT


hr_clerk;

ALTER USER scott DEFAULT ROLE NONE;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Roles de la Aplicacin

Los roles de la aplicacin slo se pueden activar


por medio de paquetes PL/SQL autorizados.
La clusula de paquete USING crea un rol de la
aplicacin.
CREATE ROLE admin_role
IDENTIFIED USING hr.employee;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Activacin y Desactivacin de Roles

Desactive un rol para revocarlo temporalmente de


un usuario.
Active un rol para otorgarlo temporalmente.
El comando SET ROLE activa y desactiva roles.
Los roles por defecto se activan para un usuario en
el momento de la conexin.
Es posible que necesite una contrasea para activar
un rol.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Activacin y Desactivacin de Roles

SET ROLE hr_clerk;

SET ROLE oe_clerk IDENTIFIED BY order;

SET ROLE ALL EXCEPT oe_clerk;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Revocacin de Roles a Usuarios

La revocacin de roles a los usuarios requiere la


opcin ADMIN OPTION o el privilegio GRANT ANY
ROLE.
Para revocar un rol:

REVOKE oe_clerk FROM scott;

REVOKE hr_manager FROM PUBLIC;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Eliminacin de Roles

Borrado de un rol:
Lo elimina de todos los usuarios y roles a los que se
otorg
Lo elimina de la base de datos
Requiere la opcin ADMIN OPTION o el privilegio
DROP ANY ROLE
Para borrar un rol:

DROP ROLE hr_manager;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Instrucciones para la Creacin de Roles

Usuarios

Roles de
usuario HR_CLERK HR_MANAGER PAY_CLERK

Roles de la
aplicacin BENEFITS PAYROLL

Privilegios de la
aplicacin
Privilegios de Privilegios de pagos
beneficios

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Instrucciones para el Uso de Contraseas
y Roles por Defecto

Protegido por
contrasea (no es el
valor por defecto) Rol por defecto

PAY_CLERK PAY_CLERK_RO

Privilegios INSERT, UPDATE, Privilegios de


DELETE y SELECT seleccin

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Obtencin de Informacin acerca de Roles
Consulte las siguientes vistas para obtener informacin
acerca de los roles:
DBA_ROLES: Todos los roles que existen en la base de
datos
DBA_ROLES_PRIVS: Roles otorgados a usuarios y a
otros roles
ROLE_ROL_PRIVS: Roles otorgados a otros roles
DBA_SYS_PRIVS: Privilegios del sistema otorgados a
usuarios y a otros roles
ROLE_SYS_PRIVS: Privilegios del sistema otorgados a
roles
ROLE_TAB_PRIVS: Privilegios de objeto otorgados a
roles
SESSION_ROLES: Roles que tiene activados el usuario
actualmente
Copyright Oracle Corporation, 2002. Todos los derechos reservados.
Resumen

En esta leccin, ha aprendido a:


Crear roles
Asignar privilegios a los roles
Asignar roles a usuarios o a otros roles
Establecer roles por defecto
Obtener informacin acerca de los roles

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Prctica 17: Visin General

Esta prctica abarca los siguientes temas:


Enumeracin de privilegios del sistema para un rol
Creacin, asignacin y borrado de roles
Creacin de roles de la aplicacin

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


18 Auditora

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Describir las categoras de auditora
Activar la auditora para una instancia
Describir las opciones de auditora
Obtener informacin acerca de las auditoras

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Auditora

La auditora es el control de acciones de base de


datos de usuario seleccionadas y se utiliza para:
Investigar actividades sospechosas en la base de
datos
Recopilar informacin acerca de actividades
especficas de la base de datos
La auditora se puede realizar por sesin o por
acceso

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Instrucciones de Auditora

Defina lo que desea auditar:


Usuarios, sentencias u objetos
Ejecuciones de sentencias
Ejecuciones de sentencias correctas, ejecuciones de
sentencias incorrectas o ambas
Gestione la pista de auditora:
Controle el aumento de la pista de auditora
Proteja la pista de auditora de un acceso no
autorizado

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Categoras de Auditora

Auditora por defecto:


Inicio y cierre de la instancia
Privilegios de administrador
Auditora de la base de datos:
Activada por el DBA
No puede registrar los valores de las columnas
Auditora de aplicaciones o basada en valores:
Implementada mediante cdigo
Puede registrar los valores de las columnas
Se utiliza para hacer un seguimiento de los cambios
realizados en las tablas

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Auditora de la Base de Datos
Activar la auditora de
base de datos Ejecutar comando

Archivo de Usuario
DBA
parmetros
Proceso de
Revisar la Especificar las servidor
informacin opciones de
de auditora auditora Generar pista
de auditora

Opciones
de auditora
Pista de
Base de
auditora del SO
datos
Pista de
auditora

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Opciones de Auditora

Auditora de sentencias:
AUDIT TABLE;

Auditora de privilegios:
AUDIT create any trigger;

Auditora de objetos de esquema:


AUDIT SELECT ON emi.orders;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Opciones de Auditora

Auditora detallada:
Proporciona el control del acceso a los datos
basndose en el contenido
Se implementa con el paquete DBMS_FGA

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Auditora del Usuario SYS

La auditora del usuario SYS proporciona:


Un nivel adicional de seguridad
Defina AUDIT_SYS_OPERATIONS en TRUE
No auditora del usuario SYS:
Defina AUDIT_SYS_OPERATIONS en FALSE
ste es el valor por defecto.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Obtencin de Informacin acerca de las
Auditoras

Consulte las siguientes vistas para obtener


informacin acerca de las auditoras:
ALL_DEF_AUDIT_OPTS
DBA_STMT_AUDIT_OPTS
DBA_PRIV_AUDIT_OPTS
DBA_OBJ_AUDIT_OPTS

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Obtencin de Informacin acerca de
Registros de Auditora

Consulte las siguientes vistas para obtener


informacin acerca de los registros de auditora:
DBA_AUDIT_TRAIL
DBA_AUDIT_EXISTS
DBA_AUDIT_OBJECT
DBA_AUDIT_SESSION
DBA_AUDIT_STATEMENT

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Resumen

En esta leccin, ha aprendido a:


Definir las necesidades de auditora
Activar y desactivar la auditora
Identificar y utilizar las distintas opciones de
auditora
Obtener informacin acerca de las auditoras

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Prctica 18: Visin General

No existe prctica para esta leccin.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


19
Carga de Datos en una Base de Datos

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Demostrar el uso de las operaciones de Carga
Directa
Describir el uso de SQL*Loader
Realizar operaciones bsicas de SQL*Loader
Enumerar las instrucciones del uso de SQL*Loader
y de la Carga Directa

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Mtodos de Carga de Datos

Otras aplicaciones

Base de
datos
Exportar Oracle

SQL*Loader

Importar
Base de
datos
Oracle
Carga Directa

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Carga Directa

Se puede realizar una insercin de Carga Directa de


las siguientes formas:
Normal (en serie) o en paralelo
En tablas particionadas, tablas no particionadas o
particiones nicas de una tabla
Con o sin registro de datos de redo

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Carga Directa en Serie

INSERT /*+ APPEND */ INTO emp


NOLOGGING
SELECT * FROM t_employees;
COMMIT;

Proceso de
servidor
Tabla EMPLOYEES

Bloque utilizado Lmite superior


Espacio libre despus de Bloques utilizados por las filas
la supresin insertadas

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Carga Directa Paralela

ALTER SESSION ENABLE PARALLEL DML;


INSERT /*+PARALLEL(hr.employees,2) */ INTO
hr.employees NOLOGGING
SELECT * FROM hr.old_employees;

Proceso Proceso
esclavo esclavo
Tabla EMPLOYEES

Bloque utilizado
Lmite superior
Espacio libre despus de
Segmentos temporales
la supresin

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


SQL*Loader
Archivo de control
del cargador Archivos de datos
de entrada

Archivo de parmetros SQL*Loader Rechazado


(opcional)
Procesamiento de campos

Desechado Aceptado
Seleccin de registros
Archivo
Seleccionado de errores

Oracle Server
Archivo de desechos
Insertado Rechazado
(opcional)

Archivo log

Archivos de datos de base de datos

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Uso de SQL*Loader

$sqlldr hr/hr \
> control=case1.ctl \
> log=case1.log direct=Y

case1.ctl

SQL*Loader

Tabla EMPLOYEES

case1.log

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Archivo de Control de SQL*Loader

El archivo de control del cargador le indica a


SQL*Loader:
Dnde encontrar los datos de carga
El formato de los datos
Los detalles de configuracin:
Gestin de memoria
Rechazo de registros
Detalles de gestin de carga interrumpida
Cmo manipular los datos

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Consideraciones de la Sintaxis del Archivo
de Control

La sintaxis tiene formato libre.


La sintaxis no es sensible a
maysculas/minsculas.
Los comentarios abarcan desde los dos guiones (--)
que marcan el comienzo del comentario hasta el
final de la lnea.
La palabra clave CONSTANT est reservada.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Datos de Entrada y Archivos de Datos

SQL*Loader lee los datos de uno o ms archivos


especificados en el archivo de control.
Desde el punto de vista de SQL*Loader, los datos
de los archivos de datos se organizan como
registros.
Un archivo de datos puede tener uno de los tres
formatos siguientes:
Formato de registro fijo
Formato de registro variable
Formato de registro de flujo

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Registros Lgicos

Se puede indicar a SQL*Loader que siga una de las


dos estrategias siguientes de formacin de registros
lgicos:
Combinar un nmero fijo de registros fsicos para
formar cada registro lgico.
Combinar registros fsicos con registros lgicos si
se cumple una condicin concreta.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Mtodos de Carga
Instancia
SGA Conjunto
Insercin de compartido
matriz

Convencional

Seguridad
Tabla Ruta de acceso
de datos directa

Lmite superior
Espacio utilizado slo por la carga
convencional

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Comparacin de las Cargas por Rutas
de Acceso Convencionales y Directas

Carga por Rutas


Carga Convencional de Acceso Directas

Utiliza COMMIT para hacer Utiliza seguridad de datos


permanentes los cambios

Siempre se generan Slo genera redo en


registros de redo condiciones especficas
Fuerza todas Slo fuerza la clave primaria,
las restricciones nica y NOT NULL

Se arrancan los No se arrancan los


disparadores INSERT disparadores INSERT
Se puede cargar en tablas No se puede cargar
agrupadas en tablas agrupadas
Otros usuarios pueden Otros usuarios no pueden
hacer cambios en las tablas hacer cambios en las tablas

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Carga por Rutas de Acceso Directas
Paralela
Segmentos temporales
load1.dat SQL*Loader
load1.ctl

load2.dat SQL*Loader
load2.ctl

load3.dat
SQL*Loader
load3.ctl

Tabla

Lmite
superior

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Conversin de Datos

Durante una carga por rutas de acceso


convencionales, los campos de datos del archivo de
datos se convierten en columnas de la base de datos
en dos pasos:
Las especificaciones de campo del archivo de
control se utilizan para interpretar el formato del
archivo de datos y convertirlo en una sentencia SQL
INSERT utilizando esos datos.
El servidor de la base de datos Oracle acepta los
datos y ejecuta la sentencia INSERT para
almacenarlos en la base de datos.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Registros Desechados o Rechazados

Archivo de errores:
SQL*Loader rechaza los registros si el formato de
entrada no es vlido.
Si la base de datos Oracle comprueba que la fila no es
vlida, se rechaza el registro y SQL*Loader lo coloca
en el archivo de errores.
Archivo de desechos:
Esta opcin slo se puede utilizar si se ha activado.
Este archivo contiene registros que se han filtrado
porque no coincidan con ningn criterio de seleccin
de registros especificado en el archivo de control.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Contenido del Archivo Log

Informacin de cabecera
Informacin global
Informacin de tabla
Informacin del archivo de datos
Informacin de la carga de tabla
Estadsticas de resumen
Estadsticas adicionales para cargas por rutas de
acceso directas e informacin multithread

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Instrucciones de SQL*Loader

Utilice un archivo de parmetros para especificar


las opciones de lnea de comandos que se usan con
frecuencia.
Coloque datos dentro del archivo de control slo
para una carga pequea que se realiza una sola vez.
Mejore el rendimiento mediante:
La asignacin de suficiente espacio
La ordenacin de los datos en el ndice de mayor
tamao
La especificacin de distintos archivos para los
segmentos temporales de cargas paralelas

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Resumen

En esta leccin, ha aprendido a:


Describir el uso de SQL*Loader
Realizar operaciones bsicas de SQL*Loader
Demostrar dominio en el uso de operaciones de
Carga Directa
Enumerar las instrucciones para utilizar
SQL*Loader y operaciones de Carga Directa

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Prctica 19: Visin General

Esta prctica abarca los siguientes temas:


Uso de SQL*Loader para restaurar datos:
Mediante un archivo de control
Mediante un archivo de datos
Uso de la Carga Directa para cargar datos

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


20
Uso del Soporte de Globalizacin

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Seleccionar juegos de caracteres de la base de
datos y juegos de caracteres nacionales para una
base de datos
Especificar el comportamiento dependiente del
idioma mediante parmetros de inicializacin,
variables de entorno y el comando ALTER SESSION
Utilizar los diversos tipos de parmetros NLS
(Soporte de Idioma Nacional)
Explicar la influencia en el comportamiento
dependiente del idioma de la aplicacin
Obtener informacin acerca del uso del soporte de
globalizacin

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Funciones del Soporte de Globalizacin

Soporte de idioma
Soporte de territorio
Soporte del juego de caracteres
Ordenacin lingstica
Soporte de mensajes
Formatos de fecha y hora
Formatos numricos
Formatos monetarios

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Juegos de Caracteres

Oracle soporta varias clases de juegos de caracteres:


Juegos de caracteres de byte nico
7-bit
8-bit
Juegos de caracteres multibyte de ancho variable
Juegos de caracteres multibyte de ancho fijo
Unicode (AL32UTF8, AL16UTF16, UTF8)

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Juegos de Caracteres de la Base de Datos
y Juegos de Caracteres Nacionales
Juegos de Caracteres de la Juegos de Caracteres
Base de Datos Nacionales
Definido en el momento de Definido en el momento de
la creacin la creacin

No se puede modificar sin No se puede cambiar sin volver


volver a crearlo a crearlo, pocas excepciones

Almacena columnas de datos de Almacena columnas de datos de


los tipos CHAR, VARCHAR2, CLOB, los tipos NCHAR, NVARCHAR2,
LONG NCLOB

Puede almacenar juegos de Puede almacenar Unicode con


caracteres de ancho variable AL16UTF16 o UTF8

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Instrucciones para la Seleccin de un
Juego de Caracteres de la Base de Datos
Oracle
Consideraciones:
Qu idioma debe soportar la base de datos?
Qu problemas de interoperabilidad puede haber
entre aplicaciones y recursos del sistema?
Cules son las implicaciones para el rendimiento?
Cules son las restricciones?

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Instrucciones para la Seleccin de un
Juego de Caracteres Nacional de Oracle

Dos posibilidades:
AL16UTF16
UTF8
Hay que tener en cuenta el espacio?
Hay que tener en cuenta el rendimiento?

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Seleccin de una Solucin Unicode:
Base de Datos Unicode

Cundo debe utilizar una base de datos Unicode?


Facilidad para migrar cdigo para Java o PL/SQL
Facilidad para migrar datos desde ASCII
Datos multilinges distribuidos de forma equitativa
Bsqueda de texto InterMedia

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Seleccin de una Solucin Unicode:
Tipo de Dato Unicode

Cundo se debe utilizar un tipo de dato Unicode?


Al agregar soporte multilinge de forma incremental
En aplicaciones empaquetadas
Rendimiento: Juego de caracteres de la base de
datos byte nico con un juego de caracteres
nacional de ancho fijo
Mejor soporte para UTF-16 con clientes Windows

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Especificacin del Comportamiento
Dependiente del Idioma

Parmetro de inicializacin

Variable de entorno

Comando
ALTER SESSION

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Especificacin del Comportamiento
Dependiente del Idioma para el Servidor

NLS_LANGUAGE especifica:
El idioma de los mensajes
Los nombres de das y meses
Los smbolos para d.C., a.C., a.m., p.m.
El mecanismo de ordenacin por defecto
NLS_TERRITORY especifica:
La numeracin de das y semanas
El formato de fecha por defecto, el carcter
decimal, el separador de grupos y los smbolos
de divisa ISO y locales por defecto

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Valores por Defecto Dependientes del
Idioma y del Territorio

Parmetro Valores

NLS_LANGUAGE AMERICAN
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY

NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_DATE_FORMAT DD-MON-RR
NLS_NUMERIC_CHARACTERS ,.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Especificacin del Comportamiento
Dependiente del Idioma para la Sesin

Variable de entorno:
NLS_LANG=French_France.UTF8
Variables de entorno adicionales:
NLS_DATE_FORMAT
NLS_DATE_LANGUAGE
NLS_SORT
NLS_NUMERIC_CHARACTERS
NLS_CURRENCY
NLS_ISO_CURRENCY
NLS_CALENDAR

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Especificacin del Comportamiento
Dependiente del Idioma para la Sesin

NLS_LANG=
<idioma>_<territorio>.<juego_car
acteres>
NLS_NCHAR=<juego_caracteres_n>

CREATE DATABASE ...


CHARACTER SET
<juego_caracteres>
NATIONAL CHARACTER SET
<juego_caracteres_n>
...

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Especificacin del Comportamiento
Dependiente del Idioma para la Sesin

ALTER SESSION SET


NLS_DATE_FORMAT=DD.MM.YYYY;

DBMS_SESSION.SET_NLS(NLS_DATE_FORMAT,
DD.MM.YYYY) ;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Ordenacin Lingstica

Hay tres tipos de ordenacin:


Ordenacin binaria: Ordenacin en funcin de los
valores binarios de los caracteres codificados
Ordenacin monolinge:
Ordena en dos pases
Se basa en los valores principales y secundarios
asignados a un carcter
Ordenacin multilinge, que se basa en:
La nueva ISO 14651
El estndar Unicode 3.0 para la intercalacin
multilinge

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Ordenacin NLS

NLS_SORT especifica el tipo de ordenacin para los


datos de caracteres:
Lo define la variable de entorno NLS_LANG
Se puede sustituir en el nivel de sesin
Funcin NLSSORT:
Especifica el tipo de ordenacin para datos de
caracteres
Permitir definir ordenaciones en el nivel de consulta

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Uso de Parmetros NLS
en las Funciones SQL

SELECT TO_CHAR(hire_date,DD.Mon.YYYY,
NLS_DATE_LANGUAGE=FRENCH)
FROM employees;

SELECT ename, TO_CHAR(sal,9G999D99,


NLS_NUMERIC_CHARACTERS=,.)
FROM emp;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Soporte de ndice Lingstico

Indexacin lingstica
Rendimiento elevado de la ordenacin local:
CREATE INDEX list_word ON
list (NLSSORT(word, NLS_SORT =
French_M));

Parmetro NLS_COMP para comparaciones


lingsticas

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Importacin y Carga de
Datos mediante NLS

Los datos se convierten desde el juego de caracteres


del archivo de exportacin al juego de caracteres de la
base de datos durante la importacin.
SQL*Loader:
Ruta de acceso convencional: Los datos se convierten al
juego de caracteres de la sesin especificado por
NLS_LANG.
Ruta de acceso directa: Los datos se convierten
directamente al juego de caracteres de la base de datos.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Uso de Parmetros NLS
en las Funciones SQL

Explorador del juego de caracteres:


Explora la base de datos para determinar si se puede
cambiar el juego de caracteres
Genera informes que detallan los posibles problemas
y soluciones
Oracle Locale Builder:
Interfaz grfica fcil de utilizar
Para ver, modificar y crear definiciones de datos
locales

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Obtencin de Informacin acerca de los
Juegos de Caracteres

NLS_DATABASE_PARAMETERS:
PARAMETER
(NLS_CHARACTERSET,
NLS_NCHAR_CHARACTERSET)
VALUE

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Obtencin de Informacin acerca de los
Valores de NLS

NLS_INSTANCE_PARAMETERS:
PARAMETER (parmetros de inicializacin que se han
definido explcitamente)
VALUE
NLS_SESSION_PARAMETERS:
PARAMETER (parmetros de sesin)
VALUE

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Obtencin de Informacin acerca de los
Valores de NLS

V$NLS_VALID_VALUES:
PARAMETER
(LANGUAGE, SORT, TERRITORY, CHARACTERSET)
VALUE
V$NLS_PARAMETERS:
PARAMETER (Parmetros de sesin NLS,
NLS_CHARACTERSET)
VALUE

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Resumen

En esta leccin, ha aprendido a:


Seleccionar un juego de caracteres de la base de
datos y un juego de caracteres nacional para la
base de datos
Utilizar los distintos tipos de parmetros NLS
(Soporte de Idioma Nacional) para el servidor o la
sesin

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Prctica 20: Visin General

Esta prctica abarca los siguientes temas:


Comprobacin de los juegos de caracteres de la
base de datos y nacional
Identificacin de valores NLS vlidos
Definicin de parmetros NLS

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


BB
Gestin Manual de Datos de Deshacer
(Segmentos de Rollback)

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Objetivos

Al finalizar esta leccin, debera estar capacitado para:


Crear segmentos de rollback mediante valores de
almacenamiento adecuados
Mantener segmentos de rollback
Planificar el nmero y tamao de los segmentos de
rollback
Solucionar los problemas habituales de los
segmentos de rollback

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Creacin de Segmentos de Rollback

CREATE ROLLBACK SEGMENT rbs01


TABLESPACE rbs
STORAGE (
INITIAL 100K
NEXT 100K
MINEXTENTS 20
MAXEXTENTS 100
OPTIMAL 2000K );

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Transacciones y Segmentos de Rollback

1 2

Transaccin 1 Transaccin 2
4 3

Extensin activa Extensin inactiva

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Crecimiento de los Segmentos de
Rollback

1 2
1 2

5 3
4 3
4

Extensin activa Nueva extensin

Extensin inactiva

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Reduccin de los Segmentos de Rollback

6 1
1 2
5 2
6 3
4 3

Extensin activa

OPTIMAL Extensin inactiva

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Puesta Online de los Segmentos de
Rollback

Utilice el siguiente comando para hacer que un


segmento de rollback est disponible:

ALTER ROLLBACK SEGMENT rbs01 ONLINE;

Especifique el siguiente parmetro de inicializacin


para garantizar que los segmentos de rollback
se pongan online al inicio:

ROLLBACK_SEGMENTS=(rbs01, rbs02)

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Cmo Adquieren las Instancias
Segmentos de Rollback

Adquiera Calcule el Hay No


segmentos de nmero suficientes
rollback necesario de segmentos
privados segmentos de de rollback?
denominados. rollback.

S
Adquiera
segmentos de
rollback
pblicos.
Ponga online todos los
segmentos de rollback
adquiridos.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Cambio de los Valores de Almacenamiento
de los Segmentos de Rollback

Utilice el comando ALTER ROLLBACK SEGMENT.


Puede modificar OPTIMAL o MAXEXTENTS.

ALTER ROLLBACK SEGMENT rbs01


STORAGE( MAXEXTENTS 200 );

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Desasignacin de Espacio de los
Segmentos de Rollback

Utilice el comando ALTER ROLLBACK SEGMENT.


Si las extensiones estn activas, quizs no se
reduzcan hasta el tamao necesario.

ALTER ROLLBACK SEGMENT rbs01


SHRINK TO 4M;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Puesta Offline de un Segmento de
Rollback

Ponga un segmento de rollback offline para hacer


que no est disponible.
Si las transacciones utilizan el segmento de
rollback, el estado cambiar temporalmente a
PENDING OFFLINE.

ALTER ROLLBACK SEGMENT rbs01


OFFLINE;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Borrado de Segmentos de Rollback

Para borrar un segmento de rollback, debe estar


offline.
Para borrar un segmento de rollback:

DROP ROLLBACK SEGMENT rbs01;

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Planificacin de Segmentos de Rollback:
Nmero

OLTP
Muchos segmentos de rollback pequeos
Cuatro transacciones por cada segmento de rollback
Hasta diez transacciones por cada segmento de
rollback
Batch
Pocos segmentos de rollback de gran tamao
Uno por cada transaccin

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Planificacin de Segmentos de Rollback:
Nmero de Extensiones

0.50

0.40
Probabilida
d de 0.30
ampliacin
0.20

0.10

0.00
0 10 20 30 40
Nmero de extensiones

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Problemas Relacionados con los
Segmentos de Rollback

Espacio insuficiente para transacciones


Errores de consistencia de lectura
Bloqueo de sesiones
Errores al poner un tablespace offline

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Espacio Insuficiente para las
Transacciones

No queda espacio en el tablespace:


Ampliar los archivos de datos
Permitir la extensin automtica de los archivos de
datos
Agregar archivos de datos
Se ha alcanzado el valor de MAXEXTENTS para el
segmento
Aumentar MAXEXTENTS
Volver a crear segmentos con tamaos de extensin
mayores

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Errores de Consistencia de Lectura

SELECT * Bloque
Tabla FROM tabla reutilizado

Imagen nueva
Imagen al comienzo de la sentencia

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Bloqueo de Sesiones

Bloqueo
de
sesin
1 2
4 1
Extensin
5
3

3 2 3
4

Extensin existente

Nueva extensin

Copyright Oracle Corporation, 2002. Todos los derechos reservados.


Errores al Poner un Tablespace Offline

No se puede poner un tablespace offline si contiene


un segmento de rollback activo.
1. Determine qu segmentos de rollback se
encuentran en el tablespace.
2. Ponga todos esos segmentos de rollback offline.
3. Busque las transacciones activas mediante esos
segmentos de rollback.
4. Busque el identificador de sesin y el nmero de
serie.
5. Termine la sesin si fuera necesario.
6. Ponga el tablespace offline.

Copyright Oracle Corporation, 2002. Todos los derechos reservados.

You might also like