Compartir a través de


sp_configure (Transact-SQL)

Muestra o cambia las opciones de configuración global del servidor actual.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

sp_configure [ [ @configname = ] 'option_name' 
    [ , [ @configvalue = ] 'value' ] ] 

Argumentos

  • [ @configname= ] 'option_name'
    Es el nombre de una opción de configuración. option_name es de tipo varchar(35) y su valor predeterminado es NULL. SQL Server Database Engine (Motor de base de datos de SQL Server) reconoce cualquier cadena única que forme parte del nombre de configuración. Si no se especifica, se devuelve la lista completa de opciones.

    Para obtener más información acerca de las opciones de configuración disponibles y sus valores, vea Establecer las opciones de configuración del servidor.

  • [ @configvalue= ] 'value'
    Es la nueva configuración. value es de tipo int y su valor predeterminado es NULL. El valor máximo depende de la opción individual.

    Para ver el valor máximo de cada opción, vea la columna maximum de la vista de catálogo sys.configurations.

Valores de código de retorno

0 (correcto) o 1 (error)

Conjuntos de resultados

Si se ejecuta sin especificar ningún parámetro, sp_configure devuelve un conjunto de resultados con cinco columnas y ordena las opciones alfabéticamente en orden ascendente, tal y como muestra la tabla siguiente.

Los valores de config_value y run_value no son equivalentes de forma automática. Después de actualizar un parámetro de configuración mediante sp_configure, el administrador del sistema debe actualizar el valor de configuración actual mediante RECONFIGURE o RECONFIGURE WITH OVERRIDE. Para obtener más información, vea la sección Notas.

Nombre de columna

Tipo de datos

Descripción

name

nvarchar(35)

Nombre de la opción de configuración.

minimum

int

Valor mínimo de la opción de configuración.

maximum

int

Valor máximo de la opción de configuración.

config_value

int

Valor que se especificó para la opción de configuración mediante sp_configure (valor en sys.configurations.value). Para obtener más información acerca de estas opciones, vea Establecer las opciones de configuración del servidor y sys.configurations (Transact-SQL).

run_value

int

Valor actual de la opción de configuración (valor en sys.configurations.value_in_use).

Para obtener más información, vea sys.configurations (Transact-SQL).

Notas

Utilice sp_configure para ver o cambiar la configuración del servidor. Para cambiar la configuración de la base de datos, utilice ALTER DATABASE. Para cambiar la configuración que afecta sólo a la sesión de usuario actual, utilice la instrucción SET.

Actualizar el valor de configuración actual

Cuando especifica un nuevo value para una option, el conjunto de resultados mostrará este valor en la columna config_value. El valor difiere inicialmente del valor de la columna run_value, que muestra el valor de configuración actual. Para actualizar el valor de configuración actual en la columna run_value, el administrador del sistema debe ejecutar RECONFIGURE o RECONFIGURE WITH OVERRIDE.

RECONFIGURE y RECONFIGURE WITH OVERRIDE funcionan con todas las opciones de configuración. No obstante, la instrucción RECONFIGURE básica rechaza cualquier valor de opción que esté fuera de un intervalo razonable o que pueda ocasionar conflictos entre las opciones. Por ejemplo, RECONFIGURE genera un error si el valor de recovery interval es superior a 60 minutos o si el valor de affinity mask se superpone con el de affinity I/O mask. RECONFIGURE WITH OVERRIDE, por el contrario, admite cualquier valor de opción que contenga el tipo de datos correcto y obliga a realizar la reconfiguración con el valor especificado.

Nota de advertenciaAdvertencia

Un valor de opción inapropiado puede afectar negativamente a la configuración de la instancia de servidor. Utilice RECONFIGURE WITH OVERRIDE con precaución.

La instrucción RECONFIGURE actualiza algunas opciones dinámicamente; para otras opciones es necesario detener y reiniciar el servidor. Por ejemplo, las opciones de memoria de servidor min server memory y max server memory se actualizan dinámicamente en el Database Engine (Motor de base de datos); por tanto, puede cambiarlas sin reiniciar el servidor. En cambio, reconfigurar el valor actual de la opción fill factor requiere reiniciar el Database Engine (Motor de base de datos).

Después de ejecutar RECONFIGURE en una opción de configuración, puede ver si la opción se ha actualizado dinámicamente ejecutando sp_configure'option_name'. El valor de las columnas run_value y config_value debe coincidir para una opción actualizada dinámicamente. También puede comprobar las opciones que son dinámicas mirando la columna is_dynamic de la vista de catálogo sys.configurations.

[!NOTA]

Si un value especificado es demasiado alto para una opción, en la columna run_value se refleja que Database Engine (Motor de base de datos) ha tomado el valor predeterminado de la memoria dinámica, en lugar de usar un parámetro que no es válido.

Para obtener más información, vea RECONFIGURE (Transact-SQL).

Opciones avanzadas

Algunas opciones de configuración, como affinity mask y recovery interval, se designan como opciones avanzadas. De forma predeterminada, estas opciones no están disponibles para verlas o modificarlas. Para que estén disponibles, establezca la opción de configuración ShowAdvancedOptions en 1.

Para obtener más información acerca de las opciones de configuración disponibles y sus valores, vea Establecer las opciones de configuración del servidor.

Permisos

De forma predeterminada, todos los usuarios tienen permisos de ejecución de sp_configure sin ningún parámetro o sólo con el primero. Para ejecutar sp_configure con ambos parámetros y cambiar una opción de configuración o ejecutar la instrucción RECONFIGURE, debe tener el permiso ALTER SETTINGS en el servidor. Las funciones fijas de servidor sysadmin y serveradmin tienen el permiso ALTER SETTINGS de forma implícita.

Ejemplos

A. Enumerar las opciones de configuración avanzadas

En este ejemplo se muestra cómo establecer y enumerar todas las opciones de configuración. Para ver las opciones de configuración avanzadas, primero hay que establecer en 1 el valor de show advanced option. A continuación, si se ejecuta sp_configure sin parámetros, se mostrarán todas las opciones de configuración.

USE master;
GO
EXEC sp_configure 'show advanced option', '1';

Este es el mensaje: "Se ha cambiado la opción de configuración 'show advanced options' de 0 a 1. Ejecute la instrucción RECONFIGURE para instalar".

Ejecute RECONFIGURE y muestre todas las opciones de configuración:

RECONFIGURE;
EXEC sp_configure;

B. Cambiar una opción de configuración

En el siguiente ejemplo se establece el recovery interval (intervalo de recuperación) del sistema en 3 minutos.

USE master;
GO
EXEC sp_configure 'recovery interval', '3';
RECONFIGURE WITH OVERRIDE;