Compartir a través de


Configuración del servidor: espera de consulta

Se aplica a: SQL Server

En este artículo se describe cómo configurar la opción de configuración del servidor de espera de consultas en SQL Server mediante SQL Server Management Studio o Transact-SQL. Las consultas que consumen mucha memoria (como las que implican la ordenación y el hash) se ponen en cola cuando no hay suficiente memoria disponible para ejecutar la consulta. La opción de espera de consulta especifica el tiempo, en segundos (de 0 a 2.147.483.647), que una consulta espera los recursos antes de que se agote el tiempo de espera. El valor predeterminado de esta opción es -1. Esto significa que el tiempo de espera se calcula como 25 veces el costo estimado de la consulta.

Importante

Una transacción que contiene la consulta en espera puede retener bloqueos mientras la consulta espera para utilizar la memoria. En raras situaciones, es posible que se produzca un interbloqueo indetectable. Al disminuir el tiempo de espera de la consulta, disminuye la probabilidad de que se produzcan estos interbloqueos. Finalmente, se terminará una consulta en espera y se liberarán los bloqueos de la transacción. Sin embargo, aumentar el tiempo de espera máximo puede aumentar la cantidad de tiempo para que se finalice la consulta. No se recomiendan los cambios en esta opción.

Recomendaciones

Esta opción es avanzada y solo debe cambiarla un administrador de base de datos con experiencia o un profesional certificado de SQL Server.

Permisos

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

Usar SQL Server Management Studio

  1. En el Explorador de objetos, haga clic con el botón derecho en un servidor y seleccione Propiedades.

  2. Seleccione el nodo Avanzado.

  3. En Paralelismo, escriba el valor que desee para la opción Espera de consulta .

Uso de Transact-SQL

  1. Conéctese con el Motor de base de datos.

  2. En la barra Estándar, seleccione Nueva consulta.

  3. Copie y pegue el ejemplo siguiente en la ventana de consulta y seleccione Ejecutar. Este ejemplo muestra cómo usar sp_configure para establecer el valor de la opción query wait en 7500 segundos.

    USE master;
    GO
    
    EXECUTE sp_configure 'show advanced options', 1;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'query wait', 7500;
    GO
    
    RECONFIGURE;
    GO
    
    EXECUTE sp_configure 'show advanced options', 0;
    GO
    
    RECONFIGURE;
    GO
    

Para obtener más información, vea Opciones de configuración de servidor.

Seguimiento: Después de configurar la opción de espera de consulta

La configuración surte efecto inmediatamente, sin necesidad de reiniciar el servidor.