Las vistas de Parámetros V$SYSTEM_PARAMETER vs V$PARAMETER

V$SYSTEM_PARAMETER es la vista que muestra todos los parámetros relativos a la instancia, al iniciar una sesión de usuario estos parámetros son heredados por la sesión. Cualquier modificación que se realice para los valores de la sesión, serán reflejados en el vista V$PARAMETER.

Para consultar los valores de los parámetros que aplican a nuestra sesión:

SELECT SP.NAME AS PARAMETRO, SUBSTR(SP.DISPLAY_VALUE,0,100) AS VALOR
FROM V$PARAMETER SP
ORDER BY NAME
;

Si queremos obtener que parámetros de nuestra sesión fueron modificados:

SELECT P.NAME AS PARAMETRO, P.VALUE AS VALOR_SESION, SP.VALUE AS VALOR_INSTANCIA
FROM V$SYSTEM_PARAMETER SP, V$PARAMETER P
WHERE SP.NUM = P.NUM
AND ( ( P.VALUE <> SP.VALUE ) OR
( P.VALUE IS NULL AND SP.VALUE IS NOT NULL ) OR
( P.VALUE IS NOT NULL AND SP.VALUE IS NULL ) )
ORDER BY P.NAME
;

Para saber si el parámetros puede ser modificado por nuestra sesión, solo basta consultar el campo ISSES_MODIFIABLE de cualquiera de las tablas:

SELECT NAME AS PARAMETRO, SUBSTR(DISPLAY_VALUE,0,100) AS VALOR
FROM V$PARAMETER
WHERE ISSES_MODIFIABLE = ‘TRUE’
ORDER BY NAME
;

Cualquiera de los parámetros listados con la consulta anterior es modificable vía el comando ALTER SESSION.
Por otro lado, los parámetros que puede ser modificados con un ALTER SYSTEM:

SELECT NAME AS PARAMETRO, ISSYS_MODIFIABLE AS MOD_SYS, SUBSTR(DISPLAY_VALUE,0,100) AS VALOR
FROM V$PARAMETER
WHERE ISSYS_MODIFIABLE <> ‘FALSE’
ORDER BY NAME
;

Si en la columna ISSYS_MODIFIABLE presenta el valor ‘IMMEDIATE’, esto quiere decir que un ALTER SYSTEM sobre ese parámetro tomará efecto inmediatemente.
En cambio, si el valor que se muestra es ‘DEFERRED’, el valor de parámetro puede modificarse con un ALTER SYSTEM y el cambio va a afectar a las nuevas sesiones.

En el caso de los parámetros que figuran con ISSYS_MODIFIABLE = ‘FALSE’ solo se pueden modificar utilizando un SPFILE (server parameter file) para inicializar la instancia y los cambios solo se aplicarán cuando la instancia sea reiniciada.

Leave a Reply