Compartir a través de


Configuración de SQL Server para almacenar ASP.NET estado de sesión

En este artículo se muestra cómo configurar Microsoft SQL Server para ASP.NET administración del estado de sesión del modo SQL Server.

Versión original del producto: ASP.NET
Número de KB original: 317604

Requisitos

En la lista siguiente se describen los hardware, software, infraestructura de red y service packs recomendados que necesita:

  • Windows
  • .NET Framework
  • Internet Information Services (IIS)
  • SQL Server

Configuración de SQL Server para ASP.NET estado de sesión de SQL Server

En los pasos siguientes se describe cómo ejecutar el InstallSqlState.sql y los archivos de script de UninstallSqlState.sql para configurar la administración del estado de sesión del modo de SQL Server.

  1. En el Analizador de consultas SQL, en el menú Archivo , seleccione Abrir.

  2. En el cuadro de diálogo Abrir archivo de consulta, vaya al archivo de script de InstallSqlState.sql y seleccione Abrir. De forma predeterminada, InstallSqlState.sql se encuentra en una de las siguientes carpetas:

    • system drive\WINNT\Microsoft.NET\Framework\version\
    • system drive\Windows\Microsoft.NET\Framework\version\
  3. Después de InstallSqlState.sql se abre en el Analizador de consultas SQL, seleccione Ejecutar en el menú Consulta para ejecutar el script.

  4. Antes de ejecutar el archivo de script de UninstallSqlState.sql para desinstalar la configuración de administración del estado de sesión del modo de SQL Server, debe detener el proceso de w3svc. Para ello, siga estos pasos:

    1. En el menú Inicio de Windows, seleccione Ejecutar, escriba cmd y, a continuación, seleccione Aceptar para abrir un símbolo del sistema.
    2. En el símbolo del sistema, escriba net stop w3svc. Recibe la confirmación de que el proceso de w3svc está detenido.
  5. En el Analizador de consultas SQL, en el menú Archivo , seleccione Abrir.

  6. En el cuadro de diálogo Abrir archivo de consulta, vaya al archivo de script de UninstallSqlState.sql y seleccione Abrir. De forma predeterminada, UninstallSqlState.sql se encuentra en una de las siguientes carpetas:

    • system drive\WINNT\Microsoft.NET\Framework\version\
    • system drive\Windows\Microsoft.NET\Framework\version\
  7. Después de UninstallSqlState.sql se abre en el Analizador de consultas SQL, seleccione Ejecutar en el menú Consulta para ejecutar el script.

  8. Después de desinstalar la configuración de administración del estado de sesión del modo sql Server, debe reiniciar el servicio w3svc. Para reiniciar el proceso de w3svc, escriba net start w3svc en un símbolo del sistema.

Modificación del archivo Web.config de la aplicación

Para implementar ASP.NET administración del estado de sesión del modo SQL Server, debe modificar el <sessionState> elemento del archivo Web.config de la aplicación de la siguiente manera:

  1. Establezca el atributo mode del <sessionState> elemento en SQLServer para indicar que el estado de sesión se almacena en SQL Server.

  2. Establezca el sqlConnectionString atributo para especificar el cadena de conexión para SQL Server. Por ejemplo:

    sqlConnectionString="data source=MySQLServer;user id=<username>;password=<strongpassword>"
    

    Nota:

    El usuario, <el nombre> de usuario, debe tener permisos para realizar esta operación en la base de datos.

El elemento modificado <sessionState> debe aparecer de la siguiente manera:

<sessionState
    mode="SQLServer"
    sqlConnectionString="data source=127.0.0.1;user id=<username>;password=<strongpassword>"
    cookieless="false"
    timeout="20"
/>

Nota:

Asegúrese de usar el caso correcto al especificar el <sessionState> elemento y los valores de atributo asociados. Este código distingue mayúsculas de minúsculas.

Solución de problemas

  • Si no detiene el proceso de w3svc antes de ejecutar el archivo de script de UninstallSqlState.sql , recibirá el siguiente mensaje de error:

    No se puede quitar la base de datos "ASPState" porque actualmente está en uso

  • Si las entradas de la tabla ASPStateTempSessions no se quitan después de que expiren las sesiones relacionadas, asegúrese de que el agente SQL Server se está ejecutando. Puede implementar esta funcionalidad mediante procedimientos almacenados programados a través de trabajos en SQL Server. El agente SQL Server administra estos trabajos.

  • Cuando se usan los archivos de script de InstallSqlState.sql y UninstallSqlState.sql predeterminados para configurar ASP.NET administración del estado de sesión del modo SQL Server. Estos archivos agregan las tablas ASPStateTempSessions y ASPStateTempApplications a la base de datos tempdb en SQL Server de forma predeterminada. Además, si reinicia SQL Server, perderá los datos de estado de sesión almacenados en las tablas ASPStateTempSessions y ASPStateTempApplications . Para obtener más información sobre cómo ejecutar scripts alternativos para configurar la administración de estado de sesión persistente de SQL Server para que los datos de sesión no se pierdan al reiniciar el servidor.

Referencias

Estado de sesión