원격 디버깅 저장 프로세스

3887 단어 저장 프로세스
원본 호스트 환경: window xp sp2 vs 2005 팀
대상 호스트 환경: window 2003 sp2 Sqlserver2005
나는 이전의 회사에서 VS2008 원격 디버깅 Sqlserver2005의 저장 프로세스를 설정한 적이 있는데 오늘 갑자기 이 일이 생각났다. 그래서 현재의 회사에서 이 환경을 설정하고 설정에 성공했다.단계는 다음과 같습니다.
(1): 대상 호스트에 새 사용자를 만들고 Administrators 그룹에 소속시킵니다.2003 운영 체제의 경우 사용자가 암호를 입력한 후 저장하면 암호 정책에 부합되지 않는 등 문제가 발생할 수 있습니다. 이 문제의 해결 방법은 제어판 - 로컬 보안 정책 - 암호 보안 일부 정책을 비활성화하면 됩니다.그리고 데이터에sysadmin 그룹에 속하도록 같은 사용자를 만듭니다.그리고 데이터베이스 서비스를 열어 사용자가 실행하고 다시 시작할 수 있도록 수정합니다.
(2): 소스 호스트에 동일한 사용자를 생성합니다. 사용자 이름과 암호가 같습니다.그리고 사용자를 전환하고 VS2005를 시작하고 서버를 추가하고 windwos 인증을 선택하고 디버깅할 데이터를 선택하십시오.오른쪽 단추를 누르면 프로그램 디버깅과 CLR 디버깅을 허용하는 옵션을 찾을 수 있습니다. 선택한 다음 항목의 속성을 수정합니다.
(3): 디버깅할 저장 프로세스를 열고 단점을 설정하고 프로그램에 저장 프로세스에 들어가는 부분도 단점을 설정하여 실행하면 효과를 볼 수 있다.
  
요약 1): 플랫폼 지원 디버깅, 2): 권한이 있는 윈도 사용자 3): 특수한 사용자로 데이터베이스 서비스를 실행한다.사실 가장 간단한 방법은 모든 컴퓨터에 이 사용자가 있기 때문에 Administrator의 비밀번호를 수정하는 것이다.대상 호스트와 원본 호스트의 비밀번호를 똑같이 설정하고 데이터에서 관리자에게 적당한 권한을 분배하면 문제가 해결됩니다.
나중에 인터넷에서 검색한 결과 또 다른 지식을 발견했다.
Visual Studio의 Professional 및 Team System 버전은 SQL Server의 저장 프로세스에 중단점을 설정하고 저장 프로세스에 들어가 디버깅할 수 있습니다.
  
원격 인스턴스의 T-SQL 데이터베이스 객체 디버그
만약 SQL Server 데이터베이스 실례가 Visual Studio와 같은 기계에 있다면 Visual Studio를 통해 데이터베이스 대상을 디버깅하는 것은 상당히 간단합니다.그러나 SQL Server와 Visual Studio가 서로 다른 시스템에 있는 경우에는 모든 기능이 작동하도록 세밀하게 구성해야 합니다.이를 위해 우리의 두 가지 중요한 임무는 다음과 같다.
  • ADO를 통해NET가 데이터베이스에 연결할 때 사용하는 로그인 계정은 시스템 관리자(sysadmin) 역할을 합니다.
  • 개발기에서 Visual Studio가 사용하는 Windows 사용자 계정이 유효하고sysadmin 신분을 가진 SQL Server 로그인 계정임을 확보한다.

  • 첫 번째 단계는 상대적으로 간단하다.먼저 ASP에서 사용할 사용자 계정을 결정합니다.NET 응용 프로그램을 데이터베이스에 연결하고 SQL Server Management Studio를 통해 이 로그인 계정을sysadmin 역할에 추가합니다.
    두 번째 작업은 응용 프로그램을 디버깅할 때 사용하는 Windows 사용자 계정이 원격 데이터베이스에 있는 유효한 로그인 계정임을 요구합니다.그러나 워크스테이션에 로그인한 Windows 계정이 SQL Server의 유효한 로그인 계정이 아닌 경우도 있습니다.SQL Server에 특정 로그인 계정을 추가하는 것보다 Windows 사용자 계정을 SQL Server 디버그 계정으로 지정하는 것이 좋습니다.그런 다음 Windows 로그인 계정의 인증서를 사용하여 Visual Studio를 실행하여 원격 SQL Server 인스턴스의 데이터베이스 객체를 디버깅할 수 있습니다.
    다음은 상술한 상황을 하나의 예로 설명한다.Windows 도메인에 SQLDebug라는 Windows 계정이 있다고 가정합니다.이 계정을 원격 SQL Server 인스턴스에 추가하여 유효한 로그인 계정 및sysadmin 역할의 구성원으로 만들어야 합니다.그리고 Visual Studio를 통해 원격 SQL Server 인스턴스를 디버깅하려면 SQLdebug 사용자로 Visual Studio를 실행해야 합니다.워크스테이션에서 로그아웃하고 SQLdebug 계정으로 다시 로그인한 다음 Visual Studio를 시작할 수 있습니다.그러나 더 간단한 방법은 우리 인증서로 워크스테이션에 로그인한 다음runas를 사용하는 것이다.exe는 SQLdebug 사용자로서 Visual Studio를 시작합니다.runas를 이용하다.exe, 다른 사용자 계정의 신분을 빌려 특정한 응용 프로그램을 실행할 수 있습니다.SQLdebug 사용자로서 Visual Studio를 시작하려면 명령줄에 다음 명령을 입력합니다.runas.exe /user:SQLDebug "%PROGRAMFILES%\Microsoft Visual Studio 8\Common7\IDE\devenv.exe"
    이 프로세스에 대한 자세한 내용은 William R. Vaughn의 Hitchhiker's Guide to Visual Studio and SQL Server, Seventh Edition 및 디버그를 위한 SQL Server 권한 설정 방법를 참조하십시오.
    참고: Windows XP 서비스 팩 2를 실행하는 개발자는 원격 디버깅을 허용하도록 인터넷 연결 Firewall을 구성해야 합니다.기사SQL Server 2005 디버그를 활성화하는 방법에서 언급한 이 과정은 두 가지 절차를 포함한다.'(a) Visual Studio 숙주 기기에서는 Exceptions 목록에 Devenv.exe를 추가하고 TCP 135 포트를 열어야 한다. (b) 원격 (SQL) 기기에서는 TCP 135 포트를 열고 Exceptions 목록에 sqlserver.exe를 추가해야 한다. 만약에 도메인 정책이 IPSec를 통해 네트워크 통신을 하려면 UDP 4500과 UDP 500 포트를 열어야 한다.
     

    좋은 웹페이지 즐겨찾기