Administración de Bases de Datos Oracle: Tablespaces, Secuencias, Índices y Recuperación con RMAN

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 9,73 KB

Tablespaces en Oracle: Unidad Lógica de Almacenamiento

Un tablespace es una unidad lógica de almacenamiento de datos representada físicamente por uno o más archivos de datos.

Creación de Tablespaces

SQL → CREATE *[undo]* TABLESPACE (NO_TAE) DATAFILE (NO_DAT) SIZE 10M DEFAULT STORAGE(INITIAL 10K NEXT 10K PCTINCREASE 25);

  • *[undo]* Especifica que se crea un tablespace de tipo deshacer.

  • DATAFILE: (NOMBRE_ARCHIVO) SIZE (K|M)

  • SIZE: Tamaño del tablespace. REUSE: Reutiliza el archivo si ya existe o lo crea si no.

  • DEFAULT STORAGE: Almacenamiento por omisión para todos los objetos. Fija la cantidad de espacio.

  • INITIAL: Tamaño en bytes de la primera extensión. // NEXT: Tamaño de la siguiente extensión que se asigne.

  • MINEXTENTS: Reserva extensiones adicionales. // MAXEXTENTS: Nº máximo de extensiones que se puede dar.

  • PCTINCREASE: Factor de crecimiento para la extensión. // ONLINE | OFFLINE: Disponible o no después de crear.

  • PERMANENT | TEMPORARY: Para albergar objetos temporales o no.

  • AUTOEXTEND: Activa o desactiva el crecimiento automático de los archivos del tablespace.

    • SQL → AUTOEXTEND ON NEXT (ENTERO) {K|M} MAXSIZE {UNLIMITED | ENTERO (K|M) }

    • NEXT ENTERO: Incremento del espacio en disco reservado automáticamente para el archivo.

    • MAXSIZE: Máximo espacio de disco para la extensión automática.

    • UNLIMITED: No hay límite de espacio en el disco para la extensión.

  • EXTENT MANAGEMENT: Especifica la gestión de las extensiones del tablespace:

    • DICTIONARY: Gestión mediante tablas de diccionario (opción por defecto en versiones anteriores a 9.0.0)

    • LOCAL: Gestión localmente mediante un mapa de bits.

    • AUTOALLOCATE: El tablespace lo gestiona el sistema (si es 9.0.0 o superior)

    • UNIFORM: El tablespace se gestiona con extensiones uniformes de bytes.

Vistas de Tablespaces

  • DBA_DATA_FILES: Muestra información sobre los archivos utilizados por los tablespaces (FILE_NAME). Para consultarla es necesario que SYS de privilegios.

  • USER_FREE_SPACE: Extensiones libres en el tablespace a las que puede acceder el usuario.

  • DBA_FREE_SPACE: Extensiones libres en todos los tablespaces.

  • DBA_TABLESPACES: Descripción de todos los tablespaces.

  • DBA_TS_QUOTAS: Bytes utilizados por los usuarios en cada tablespace (privilegios del usuario SYS).

Modificación de Tablespaces (ALTER TABLESPACE)

SQL → ALTER TABLESPACE (NOMBRE_TABLESPACE)

{

[ADD DATAFILE(NOMBRE_ARCHIVO) // [SIZE (ENTERO) [K|M]][REUSE]

[AUTOEXTEND ON ..|OFF]

[(NOMBRE_ARCHIVO) [SIZE (ENTERO) [K|M]][REUSE] // [AUTOEXTEND ON ..|OFF]]..

]

[RENAME DATAFILE (ARCHIVO) [,'ARCHIVO']... // TO 'ARCHIVO' [,ARCHIVO] ]

[DEFAULT STORAGE CLAUSULAS DE ALMACENAMIENTO] // [ONLINE|OFFLINE]

};

  • ALTER TABLESPACE (NOMBRE) * //CONDICION QUE QURAMOS MODIFICAR //*

    • ADD DATAFILE (NOMBRE): Añade al tablespace uno o varios archivos.

    • RENAME DATAFILE(NOMBRE TO NOMBRE2): Cambia el nombre a un archivo. Se debe hacer antes desde el sistema operativo y después en SQL con el tablespace desactivado.

    • DEFAULT STORAGE: Especifica parámetros de almacenamiento a los nuevos objetos que se creen.

    • ONLINE: Pone el tablespace en línea.

    • OFFLINE: Pone el tablespace fuera de línea.

Borrado de Tablespaces

  • DROP TABLESPACE (NOMBRE_TABLESPACE) [INCLUDING CONTENTS[AND DATAFILES][CASCADE CONSTRAINT]];

    • INCLUDING CONTENTS: Permite borrar el tablespace aunque tenga datos.

    • AND DATAFILES: Borra todos los archivos.

    • CASCADE CONSTRAINT: Borra las relaciones de integridad.

Desconexión de un Tablespace

ALTER TABLESPACE (NOMBRE_TABLESPACE) {ONLINE | OFFLINE (NORMAL | TEMPORARY | IMMEDIATE)}

Secuencias en Oracle

Objeto de la base de datos que sirve para generar números enteros únicos. Necesario CREATE SEQUENCE.

SQL CREATE SEQUENCE(NOMBRE_SECUENCIA) [INCREMENT BY ENTERO [START WITH ENTERO] [MAXVALUE ENTERO |NOMAXVALUE] [MINVALUE ETNERO|NOMINVALUE] [CYCLE|NOCYCLE] [ORDER|NOORDER] [CACHE ENTERO |NOCACHE];

  • INCREMENT BY: Intervalo de crecimiento. Si no se pone nada, es 1 por defecto.

  • START WITH: Número con el que comienza la secuencia.

  • MAXVALUE: Nº más alto que genera la secuencia. Debe ser menor que START WITH y mayor que MINVALUE.

  • NOMAXVALUE: Señala un máximo predefinido para secuencias hacia arriba o hacia abajo.

  • MINVALUE: Número más bajo que se genera en la secuencia. Menor que START WITH y menor que MAXVALUE.

  • NOMINVALUE: Señala un mínimo predefinido para secuencias hacia arriba o hacia abajo.

  • CYCLE || NOCYCLE: Reanuda la sentencia cuando se llega al máximo o al mínimo || o no.

  • ORDER || NOORDER: Garantiza que los números se generan en el orden requerido.

  • CACHE || NOCACHE: Guardar en memoria un conjunto previamente asignado de números para acceso rápido.

Índices en Oracle

Un índice es un objeto de la BD que se asocia a una tabla y al que se asocian una o varias columnas de la tabla, proporcionando un acceso rápido y directo a las filas mediante el ROWID. Las vistas USER_INDEXES y DBA_INDEXES informan sobre los índices creados.

SQL → CREATE INDEX (NOMBRE_INDICE) ON (NOMBRE_TABLA) (COLUM[ASC | DESC])[ STORAGE CLAUSULAS_ALMACENAM. [TABLESPACE (NOMBRETABLESPACE)] [OTRAS_CLAUSULAS]

  • NOMBRE TABLA: Tabla a indexar.

  • COLUM: Columna o columnas que se indexan.

  • ASC|DESC: Definir índice ascendente o descendente.

SQL → DROP INDEX (NOMBRE_INDICE).

Enlaces de Bases de Datos en Oracle

Nos permite poder acceder a los archivos de una base de datos desde otra diferente.

SQL → CREATE *[PUBLIC]* DATABASE LINK (NOMBRE_ENLACE) CONNECT TO (USUARIO) IDENTIFIED BY (CLAVE )

USING ‘CADENA_DE_CONEXIÓN ’ ;

  • CADENA_DE_CONEXIÓN: Cadena utilizada para conectar con la base de datos remota.

  • USUARIO/CLAVE: Nombre y contraseña para conectarse a la BD remota. Tiene que existir en esta.

  • En el acceso se utiliza NOMBRETABLA@NOMBREDEENLACE.

SQL → DROP *[PUBLIC]* DATABASE LINK NOMBREENLACE.

Recuperación con RMAN en Oracle

Utilidad que permite hacer un rápido backup de la B.D o de una parte de ella, potente lenguaje de comandos que utiliza los comandos de Oracle para realizar las copias y recuperaciones. Tiene 4 componentes:

  • EJECUTABLE RMAN: Se encuentra en el directorio bin y se ejecuta tecleando RMAN “HELP”

  • UNA O MAS B.D DE DESTINO: Son las B.D a las que se realizan las copias y restauraciones

  • CÓDIGO DE RECUPERACION: Datos utilizados para la copia, restauración y recuperación. No es necesario crear catálogo de recuperación pero se aconseja para la copia automática y diversas funciones.

SOFTWARE DE GESTION DE SOPORTES FISICOS: Para escribir y leer en soportes físicos, este lo proporcionan los fabricantes de sistemas de almacenamiento y soportes físicos.

Entradas relacionadas: