HOWTO: SQL Server를 구성하여 ASP.NET 세션 상태 저장

기술 자료 번역 기술 자료 번역
기술 자료: 317604 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

요약

본 문서에서는 ASP.NET SQL Server 모드 세션 상태 관리에 대해 Microsoft SQL Server를 구성하는 방법을 단계별로 설명합니다.

요구 사항

다음은 권장되는 하드웨어, 소프트웨어 및 네트워크 인프라와 필요한 서비스 팩의 목록입니다.
  • Microsoft Windows 2000 Professional, Microsoft Windows 2000 Server, Microsoft Windows 2000 Advanced Server 또는 Microsoft Windows XP
  • Microsoft .NET Framework
  • Microsoft Internet Information Services(IIS)
  • Microsoft SQL Server

ASP.NET SQL Server 세션 상태에 대해 SQL Server 구성

다음 단계에서는 InstallSqlState.sql 및 UninstallSqlState.sql 스크립트 파일을 실행하여 SQL Server 모드 세션 상태 관리를 구성하는 방법을 설명합니다.
  1. SQL 쿼리 분석기의 파일 메뉴에서 열기를 누릅니다.
  2. 쿼리 파일 열기 대화 상자에서 InstallSqlState.sql 스크립트 파일을 찾아 열기를 누릅니다. 기본적으로 InstallSqlState.sql은 다음 폴더 중 하나에 있습니다.
    system drive\WINNT\Microsoft.NET\Framework\version\

    system drive\Windows\Microsoft.NET\Framework\version\
  3. InstallSqlState.sql을 SQL 쿼리 분석기에서 연 후 쿼리 메뉴에서 실행 메뉴를 눌러 스크립트를 실행합니다.
  4. UninstallSqlState.sql 스크립트 파일을 실행하여 SQL Server 모드 세션 상태 관리 구성을 제거하기 전에 w3svc 프로세스를 중지해야 합니다. 이렇게 하려면 다음 단계를 수행하십시오.
    1. Windows 시작 메뉴에서 실행을 누르고 cmd를 입력한 다음 확인을 눌러 명령 프롬프트를 엽니다.
    2. 명령 프롬프트에서 net stop w3svc를 입력합니다. w3svc 프로세스가 중지되었다는 확인 메시지가 나타납니다.
  5. SQL 쿼리 분석기의 파일 메뉴에서 열기를 누릅니다.
  6. 쿼리 파일 열기 대화 상자에서 UninstallSqlState.sql 스크립트 파일을 찾아 열기를 누릅니다. 기본적으로 UninstallSqlState.sql은 다음 폴더 중 하나에 있습니다.
    system drive\WINNT\Microsoft.NET\Framework\version\

    system drive\Windows\Microsoft.NET\Framework\version\
  7. UninstallSqlState.sql을 SQL 쿼리 분석기에서 연 후 쿼리 메뉴에서 실행 메뉴를 눌러 스크립트를 실행합니다.
  8. SQL Server 모드 세션 상태 관리 구성을 제거한 후 w3svc 서비스를 다시 시작해야 합니다. w3svc 프로세스를 다시 시작하려면 명령 프롬프트에서 net start w3svc를 입력합니다.

응용 프로그램의 Web.config 파일 수정

ASP.NET SQL Server 모드 세션 상태 관리를 구현하려면 다음과 같이 응용 프로그램에서 Web.config 파일의 <sessionState> 요소를 수정해야 합니다.
  1. <sessionState> 요소의 mode 특성을 SQLServer로 설정하여 세션 상태가 SQL Server에 저장됨을 나타냅니다.
  2. sqlConnectionString 특성을 설정하여 SQL Server의 연결 문자열을 지정합니다. 예를 들면 다음과 같습니다.
    sqlConnectionString="data source=MySQLServer;user id=<username>;password=<strongpassword>"
    

    참고 사용자 <user name>은 데이터베이스에서 이러한 작업을 수행할 권한을 갖고 있어야 합니다.

    수정된 <sessionState> 요소는 다음과 같습니다.
    <sessionState 
                mode="SQLServer"
                sqlConnectionString="data source=127.0.0.1;user id=<username>;password=<strongpassword>"
                cookieless="false" 
                timeout="20" 
        />
    						
    참고 <sessionState> 요소 및 연관된 특성 값을 지정하는 경우 대/소문자를 구분해야 합니다. 이 코드는 대/소문자를 구분합니다.

문제 해결

  • UninstallSqlState.sql 스크립트 파일을 실행하기 전에 w3svc 프로세스를 중지하지 않으면 다음과 같은 오류 메시지가 나타납니다.
    데이터베이스 'ASPState'이(가) 현재 사용 중이어서 삭제할 수 없습니다.
  • 관련된 세션이 만료된 후에도 ASPStateTempSessions 테이블의 항목이 제거되지 않으면 SQL Server 에이전트가 실행 중인지 확인합니다. SQL Server의 작업을 통해 예약된 저장 프로시저에서 이 기능을 구현할 수 있습니다. SQL Server 에이전트가 이 작업을 관리합니다.
  • 기본 InstallSqlState.sql 및 UninstallSqlState.sql 스크립트 파일을 사용하여 ASP.NET SQL Server 모드 세션 상태 관리를 구성하면 이 파일이 SQL Server에서 기본적으로 ASPStateTempSessionsASPStateTempApplications 테이블을 tempdb 데이터베이스에 추가합니다. 또한 SQL Server를 다시 시작하면 ASPStateTempSessionsASPStateTempApplications 테이블에 저장된 세션 상태 데이터가 손실됩니다.서버를 다시 시작할 때 세션 데이터가 손실되지 않도록 대체 스크립트를 실행하여 영구 SQL Server 세션 상태 관리를 구성하는 방법은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    311209 HOWTO: 영구적으로 SQL Server 세션 상태를 관리할 수 있도록 ASP.NET 구성

참조

자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
305140 INFO: ASP.NET 가이드
307598 INFO: ASP.NET 상태 관리 개요
236166 NET STOP 및 NET START 명령을 사용하여 IIS 서비스가 레지스트리를 다시 읽도록 한다
ASP.NET 세션 상태 관리에 대한 자세한 내용은 다음 Microsoft 웹 사이트를 참조하십시오.
세션 상태
http://msdn.microsoft.com/library/kor/default.asp?url=/library/kor/cpguide/html/cpconsessionstate.asp

Cutting Edge: ASP.NET에서 세션 및 응용 프로그램 개체 사용(MSDN Magazine 문서)
http://msdn.microsoft.com/msdnmag/issues/01/10/cutting/(영문)




Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹에 참여하시기 바랍니다.

속성

기술 자료: 317604 - 마지막 검토: 2006년 1월 20일 금요일 - 수정: 5.6
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2000 64-bit Edition
키워드:?
kbconfig kbhowtomaster kbstate kbwebforms KB317604

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com