Create and Manage Database Configuration Files

1. Documentación en Tahiti -> Masters Book List -> Administrator’s Guide -> 2 Creating and Configuring an Oracle Database ->
-> Managing Initialization Parameters Using a Server Parameter File

2. Ya hemos visto algunos ejercicios en el objetivo «Determine and Set Size Parameters for Database Structures» pero vamos a realizar algunos más, aunque sea a modo de resumen.

-- Comprobamos si hemos iniciado la instancia con SPFILE o PFILE
-- El paramétro SPFILE nos indica donde está la ubicación del SPFILE con el que hemos levantado la instancia
-- Si el parámetro SPFILE estuviera vacío, significaría que hemos levantado la instancia con PFILE
show parameter spfile
-- Podemos generar un PFILE/SPFILE a partir de MEMORY, PFILE o SPFILE
-- Realizamos diferentes combinaciones

-- Cuando no especificamos la ubicación, utiliza las rutas por defecto ($ORACLE_HOME/dbs)
CREATE PFILE FROM MEMORY;
CREATE PFILE FROM SPFILE;

-- Las siguientes instrucciones requieren haber iniciado la BD con PFILE (en nuestro entorno provocaremos el error ORA-32002)
-- CREATE SPFILE FROM MEMORY;
-- CREATE SPFILE FROM PFILE;

-- Especificamos las rutas cuando queremos evitar que se sobrescriban nuestros archivos de configuración
CREATE PFILE='/tmp/initOCM.ora' FROM MEMORY;
CREATE PFILE='/tmp/initOCM.ora' FROM SPFILE;
CREATE SPFILE='/tmp/spfileOCM.ora' FROM MEMORY;
CREATE SPFILE='/tmp/spfileOCM.ora' FROM PFILE;

-- También podemos hacer conversiones
CREATE PFILE='/tmp/initOCM.ora' FROM SPFILE='/tmp/spfileOCM.ora';
CREATE SPFILE='/tmp/spfileOCM.ora' FROM PFILE='/tmp/initOCM.ora';

3. También hemos modificado varios parámetros en otros objetivos y no tiene ninguna complicación.

-- Hacemos unas pruebas con el parámetro MEMORY_TARGET (por defecto, cuando usamos SPFILE => SCOPE=BOTH)
ALTER SYSTEM SET MEMORY_TARGET=400M SCOPE=BOTH;
ALTER SYSTEM SET MEMORY_TARGET=400M SCOPE=MEMORY;
ALTER SYSTEM SET MEMORY_TARGET=400M SCOPE=SPFILE;

-- Dejamos el valor original (SCOPE=BOTH es implícito)
ALTER SYSTEM SET MEMORY_TARGET=500M;

4. Tenemos las siguientes vistas e instrucciones para consultar parámetros

  • SHOW PARAMETER => Parámetros de la sesión actual
  • SHOW SPPARAMETER => Parámetros del SPFILE
  • V$PARAMETER => Parámetros de la sesión actual
  • V$PARAMETER2 => Parámetros de la sesión actual (los parámetros con varios valores aparecen en varias lineas)
  • V$SPPARAMETER => Parámetros del SPFILE
  • V$SYSTEM_PARAMETER => Parámetros a nivel de instancia (las sesiones heredan la mayoría de valores de aquí)
  • V$SYSTEM_PARAMETER2 => Parámetros a nivel de instancia (pero con la misma estructura que V$PARAMETER2)