TSQL 디버거를 실행 하기 전에 방화벽 규칙 구성Configure firewall rules before running the TSQL Debugger

Transact-SQLTransact-SQL 쿼리 편집기와 다른 컴퓨터에서 실행 중인 데이터베이스 엔진Database Engine 인스턴스에 연결된 경우 데이터베이스 엔진Database Engine 디버깅을 사용하도록 Windows 방화벽 규칙을 구성해야 합니다.Windows Firewall rules must be configured to enable Transact-SQLTransact-SQL debugging when connected to an instance of the 데이터베이스 엔진Database Engine that is running on a different computer than the 데이터베이스 엔진Database Engine Query Editor.

Transact-SQL 디버거 구성Configuring the Transact-SQL Debugger

Transact-SQLTransact-SQL 디버거는 서버 쪽 구성 요소와 클라이언트 쪽 구성 요소를 모두 포함합니다.The Transact-SQLTransact-SQL debugger includes both server-side and client-side components. 서버 쪽 디버거 구성 요소는 SQL Server 2005SQL Server 2005 SP2(서비스 팩 2) 이상의 각 데이터베이스 엔진 인스턴스와 함께 설치됩니다.The server-side debugger components are installed with each instance of the Database Engine from SQL Server 2005SQL Server 2005 Service Pack 2 (SP2) or later. 클라이언트 쪽 디버거 구성 요소는 다음과 같은 경우에 설치됩니다.The client-side debugger components are included:

  • SQL Server 2008SQL Server 2008 이상에서 클라이언트 쪽 도구를 설치할 때When you install the client-side tools from SQL Server 2008SQL Server 2008 or later.

  • Microsoft Visual Studio 2010 이상을 설치할 때When you install Microsoft Visual Studio 2010 or later.

  • 웹 다운로드에서 SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT) 를 설치할 때When you install SQL Server Data Tools(SSDT)SQL Server Data Tools (SSDT) from the web download.

    Transact-SQLTransact-SQL 또는 SQL Server Management StudioSQL Server Management StudioSQL Server Data ToolsSQL Server Data Tools 인스턴스와 같은 컴퓨터에서 실행되는 경우 SQL Server 데이터베이스 엔진SQL Server Database Engine디버거를 실행하기 위한 구성 요구 사항이 없습니다.There are no configuration requirements to run the Transact-SQLTransact-SQL debugger when SQL Server Management StudioSQL Server Management Studio or SQL Server Data ToolsSQL Server Data Tools is running on the same computer as the instance of the SQL Server 데이터베이스 엔진SQL Server Database Engine. 그러나 Transact-SQLTransact-SQL 의 원격 인스턴스에 연결된 경우 데이터베이스 엔진Database Engine디버거를 실행하려면 두 컴퓨터 모두에서 Windows 방화벽의 프로그램 및 포트 규칙을 사용하도록 설정해야 합니다.However, to run the Transact-SQLTransact-SQL debugger when connected to a remote instance of the 데이터베이스 엔진Database Engine, program and port rules in the Windows Firewall must be enabled on both computers. 이러한 규칙은 SQL ServerSQL Server 설치 프로그램에서 만들 수 있습니다.These rules may be created by SQL ServerSQL Server setup. 원격 디버거 세션을 열려고 하는 동안 오류가 발생하면 다음 방화벽 규칙이 컴퓨터에 정의되어 있는지 확인합니다.If you get errors attempting to open a remote debugging session, ensure the following firewall rules are defined on your computer.

    고급 보안이 포함된 Windows 방화벽 응용 프로그램을 사용하여 방화벽 규칙을 관리합니다.Use the Windows Firewall with Advanced Security application to manage the firewall rules. Windows 7Windows 7Windows Server 2008 R2Windows Server 2008 R2에서 제어판, Windows 방화벽을 차례로 열고 고급 설정을 선택합니다.In both Windows 7Windows 7 and Windows Server 2008 R2Windows Server 2008 R2, open Control Panel, open Windows Firewall, and select Advanced settings. Windows Server 2008 R2Windows Server 2008 R2 에서는 서비스 관리자를 열고 왼쪽 창에서 구성 을 확장한 다음 고급 보안이 포함된 Windows 방화벽을 확장할 수도 있습니다.In Windows Server 2008 R2Windows Server 2008 R2 you can also open Service Manager, expand Configuration in the left pane, and expand Windows Firewall with Advanced Security.

주의

Windows 방화벽의 규칙을 사용하도록 설정하면 방화벽에 의해 차단되도록 설계된 컴퓨터가 보안 위협에 노출될 수 있습니다.Enabling rules in the Windows Firewall may expose your computer to security threats that the firewall is designed to block. 원격 디버깅에 대한 규칙을 사용하도록 설정하면 이 항목에 나열된 포트와 프로그램이 차단됩니다.Enabling rules for remote debugging unblocks the ports and programs listed in this topic.

서버의 방화벽 규칙Firewall Rules on the Server

데이터베이스 엔진Database Engine인스턴스를 실행하는 컴퓨터에서 고급 보안이 포함된 Windows 방화벽 을 사용하여 다음 정보를 지정합니다.On the computer that is running the instance of the 데이터베이스 엔진Database Engine, use Windows Firewall with Advanced Security to specify the following information:

  • sqlservr.exe에 대한 인바운드 프로그램 규칙을 추가합니다.Add an inbound program rule for sqlservr.exe. 원격 디버깅 세션을 지원해야 하는 인스턴스당 하나의 규칙이 있어야 합니다.You must have a rule for each instance that needs to support remote debugging sessions.

    1. 고급 보안이 포함된 Windows 방화벽의 왼쪽 창에서 인바운드 규칙을 마우스 오른쪽 단추로 클릭한 다음 작업 창에서 새 규칙 을 선택합니다.In Windows Firewall with Advanced Security, in the left pane, right-click Inbound Rules, and then select New Rule in the action pane.

    2. 규칙 유형 대화 상자에서 프로그램을 선택하고 다음을 클릭합니다.In the Rule Type dialog, select Program, and then click Next.

    3. 프로그램 대화 상자에서 다음 프로그램 경로: 를 선택하고 이 인스턴스에 대한 sqlservr.exe의 전체 경로를 입력합니다.In the Program dialog, select This program path: and enter the full path to sqlservr.exe for this instance. 기본적으로 sqlservr.exe는 C:\Program Files\Microsoft SQL Server\MSSQL13.InstanceName\MSSQL\Binn에 설치됩니다. 여기서 InstanceName 은 기본 인스턴스의 경우 MSSQLSERVER이고 명명된 임의 인스턴스의 경우 해당 인스턴스 이름입니다.By default, sqlservr.exe is installed in C:\Program Files\Microsoft SQL Server\MSSQL13.InstanceName\MSSQL\Binn, where InstanceName is MSSQLSERVER for the default instance, and the instance name for any named instance.

    4. 동작 대화 상자에서 연결 허용을 선택하고 다음을 클릭합니다.In the Action dialog, select Allow the connection, and click Next.

    5. 프로필 대화 상자에서 해당 인스턴스와 함께 디버깅 세션을 열 때의 컴퓨터 연결 환경을 설명하는 프로필을 선택하고 다음을 클릭합니다.In the Profile dialog, select any profiles that describe the computer connection environment when you want to open a debugging session with the instance, and click Next.

    6. 이름 대화 상자에 이 규칙의 이름 및 설명을 입력한 다음 마침을 클릭합니다.In the Name dialog, type a name and description for this rule and click Finish.

    7. 인바운드 규칙 목록에서 방금 만든 규칙을 마우스 오른쪽 단추로 클릭한 다음 동작 창에서 속성 을 선택합니다.In the Inbound Rules list, right click the rule you created, and then select Properties in the action pane.

    8. 프로토콜 및 포트 탭을 선택합니다.Select the Protocols and Ports tab.

    9. 프로토콜 종류: 상자에서는 TCP 를 선택하고 로컬 포트: 상자에서는 RPC 동적 포트 를 선택한 후에 적용, 확인을 차례로 클릭합니다.Select TCP in the Protocol type: box, select RPC Dynamic Ports in the Local port: box, click Apply, and then click OK.

  • svchost.exe에 대한 인바운드 프로그램을 추가하여 원격 디버거 세션에서 DCOM 통신을 사용하도록 설정합니다.Add an inbound program rule for svchost.exe to enable DCOM communications from remote debugger sessions.

    1. 고급 보안이 포함된 Windows 방화벽의 왼쪽 창에서 인바운드 규칙을 마우스 오른쪽 단추로 클릭한 다음 작업 창에서 새 규칙 을 선택합니다.In Windows Firewall with Advanced Security, in the left pane, right-click Inbound Rules, and then select New Rule in the action pane.

    2. 규칙 유형 대화 상자에서 프로그램을 선택하고 다음을 클릭합니다.In the Rule Type dialog, select Program, and then click Next.

    3. 프로그램 대화 상자에서 다음 프로그램 경로: 를 선택하고 svchost.exe의 전체 경로를 입력합니다.In the Program dialog, select This program path: and enter the full path to svchost.exe. 기본적으로 svchost.exe는 %systemroot%\System32\svchost.exe에 설치됩니다.By default, svchost.exe is installed in %systemroot%\System32\svchost.exe.

    4. 동작 대화 상자에서 연결 허용을 선택하고 다음을 클릭합니다.In the Action dialog, select Allow the connection, and click Next.

    5. 프로필 대화 상자에서 해당 인스턴스와 함께 디버깅 세션을 열 때의 컴퓨터 연결 환경을 설명하는 프로필을 선택하고 다음을 클릭합니다.In the Profile dialog, select any profiles that describe the computer connection environment when you want to open a debugging session with the instance, and click Next.

    6. 이름 대화 상자에 이 규칙의 이름 및 설명을 입력한 다음 마침을 클릭합니다.In the Name dialog, type a name and description for this rule and click Finish.

    7. 인바운드 규칙 목록에서 방금 만든 규칙을 마우스 오른쪽 단추로 클릭한 다음 동작 창에서 속성 을 선택합니다.In the Inbound Rules list, right click the rule you created, and then select Properties in the action pane.

    8. 프로토콜 및 포트 탭을 선택합니다.Select the Protocols and Ports tab.

    9. 프로토콜 종류: 상자에서는 TCP 를 선택하고 로컬 포트: 상자에서는 RPC 끝점 매퍼 를 선택한 후에 적용, 확인을 차례로 클릭합니다.Select TCP in the Protocol type: box, select RPC Endpoint Mapper in the Local port: box, click Apply, and then click OK.

  • 도메인 정책에 따라 IPSec을 통해 네트워크 통신을 수행해야 하는 경우 UDP 포트 4500 및 UDP 포트 500을 여는 인바운드 규칙도 추가해야 합니다.If the domain policy requires network communications to be done through IPsec, you must also add inbound rules opening UDP port 4500 and UDP port 500.

클라이언트의 방화벽 규칙Firewall Rules on the Client

데이터베이스 엔진Database Engine 쿼리 편집기를 실행하는 컴퓨터에서는 SQL Server 설치 프로그램이나 SQL Server Data ToolsSQL Server Data Tools 설치 프로그램이 원격 디버깅을 허용하도록 Windows 방화벽을 구성했을 수 있습니다.On the computer that is running the 데이터베이스 엔진Database Engine Query Editor, the SQL Server setup or SQL Server Data ToolsSQL Server Data Tools setup may have configured the Windows Firewall to allow remote debugging.

원격 디버깅 세션을 열려고 하는 동안 오류가 발생하면 다음과 같이 고급 보안이 포함된 Windows 방화벽 을 사용하여 방화벽 규칙을 구성함으로써 수동으로 프로그램 및 포트 예외를 구성할 수 있습니다.If you get errors attempting to open a remote debugging session, you can manually configure the program and port exceptions by using Windows Firewall with Advanced Security to configure firewall rules:

  • 다음과 같이 svchost에 대한 프로그램 항목을 추가합니다.Add a program entry for svchost:

    1. 고급 보안이 포함된 Windows 방화벽의 왼쪽 창에서 인바운드 규칙을 마우스 오른쪽 단추로 클릭한 다음 작업 창에서 새 규칙 을 선택합니다.In Windows Firewall with Advanced Security, in the left pane, right-click Inbound Rules, and then select New Rule in the action pane.

    2. 규칙 유형 대화 상자에서 프로그램을 선택하고 다음을 클릭합니다.In the Rule Type dialog, select Program, and then click Next.

    3. 프로그램 대화 상자에서 다음 프로그램 경로: 를 선택하고 svchost.exe의 전체 경로를 입력합니다.In the Program dialog, select This program path: and enter the full path to svchost.exe. 기본적으로 svchost.exe는 %systemroot%\System32\svchost.exe에 설치됩니다.By default, svchost.exe is installed in %systemroot%\System32\svchost.exe.

    4. 동작 대화 상자에서 연결 허용을 선택하고 다음을 클릭합니다.In the Action dialog, select Allow the connection, and click Next.

    5. 프로필 대화 상자에서 해당 인스턴스와 함께 디버깅 세션을 열 때의 컴퓨터 연결 환경을 설명하는 프로필을 선택하고 다음을 클릭합니다.In the Profile dialog, select any profiles that describe the computer connection environment when you want to open a debugging session with the instance, and click Next.

    6. 이름 대화 상자에 이 규칙의 이름 및 설명을 입력한 다음 마침을 클릭합니다.In the Name dialog, type a name and description for this rule and click Finish.

    7. 인바운드 규칙 목록에서 방금 만든 규칙을 마우스 오른쪽 단추로 클릭한 다음 동작 창에서 속성 을 선택합니다.In the Inbound Rules list, right click the rule you created, and then select Properties in the action pane.

    8. 프로토콜 및 포트 탭을 선택합니다.Select the Protocols and Ports tab.

    9. 프로토콜 종류: 상자에서는 TCP 를 선택하고 로컬 포트: 상자에서는 RPC 끝점 매퍼 를 선택한 후에 적용, 확인을 차례로 클릭합니다.Select TCP in the Protocol type: box, select RPC Endpoint Mapper in the Local port: box, click Apply, and then click OK.

  • 데이터베이스 엔진Database Engine 쿼리 편집기를 호스팅하는 응용 프로그램에 대한 프로그램 항목을 추가합니다.Add a program entry for the application hosting the 데이터베이스 엔진Database Engine Query Editor. 같은 컴퓨터에서 SQL Server Management StudioSQL Server Management StudioSQL Server Data ToolsSQL Server Data Tools 의 원격 디버깅 세션을 둘 다 열어야 하는 경우 다음과 같이 두 세션 모두에 대한 프로그램 규칙을 추가해야 합니다.If you need to open remote debugging sessions from both SQL Server Management StudioSQL Server Management Studio and SQL Server Data ToolsSQL Server Data Tools on the same computer, you must add a program rule for both:

    1. 고급 보안이 포함된 Windows 방화벽의 왼쪽 창에서 인바운드 규칙을 마우스 오른쪽 단추로 클릭한 다음 작업 창에서 새 규칙 을 선택합니다.In Windows Firewall with Advanced Security, in the left pane, right-click Inbound Rules, and then select New Rule in the action pane.

    2. 규칙 유형 대화 상자에서 프로그램을 선택하고 다음을 클릭합니다.In the Rule Type dialog, select Program, and then click Next.

    3. 프로그램 대화 상자에서 다음 프로그램 경로: 를 선택하고 다음 세 값 중 하나를 입력합니다.In the Program dialog, select This program path: and enter one of these three values.

      • SQL Server Management StudioSQL Server Management Studio의 경우 ssms.exe에 대한 전체 경로를 입력합니다.For SQL Server Management StudioSQL Server Management Studio, enter the full path to ssms.exe. 기본적으로 ssms.exe는 C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\Management Studio에 설치됩니다.By default, ssms.exe is installed in C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\Management Studio.

      • SQL Server Data ToolsSQL Server Data Tools 의 경우 devenv.exe의 전체 경로를 입력합니다.For SQL Server Data ToolsSQL Server Data Tools enter the full path to devenv.exe:

        1. 기본적으로 Visual Studio 2010용 devenv.exe는 C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE에 있습니다.By default, the devenv.exe for Visual Studio 2010 is in C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE.

        2. 기본적으로 Visual Studio 2012용 devenv.exe는 C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE에 있습니다.By default, the devenv.exe for Visual Studio 2012 is in C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE

        3. SQL Server Management StudioSQL Server Management Studio를 시작하기 위해 사용하는 바로 가기에서 ssms.exe에 대한 경로를 찾을 수 있습니다.You can find the path to ssms.exe from the shortcut you use to launch SQL Server Management StudioSQL Server Management Studio. SQL Server Data ToolsSQL Server Data Tools를 시작하기 위해 사용하는 바로 가기에서 devenv.exe에 대한 경로를 찾을 수 있습니다.You can find the path to devenv.exe from the shortcut you use to launch SQL Server Data ToolsSQL Server Data Tools. 바로 가기를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.Right click the shortcut and select Properties. 실행 파일과 경로가 대상 상자에 나열됩니다.The executable and path are listed in the Target box.

    4. 동작 대화 상자에서 연결 허용을 선택하고 다음을 클릭합니다.In the Action dialog, select Allow the connection, and click Next.

    5. 프로필 대화 상자에서 해당 인스턴스와 함께 디버깅 세션을 열 때의 컴퓨터 연결 환경을 설명하는 프로필을 선택하고 다음을 클릭합니다.In the Profile dialog, select any profiles that describe the computer connection environment when you want to open a debugging session with the instance, and click Next.

    6. 이름 대화 상자에 이 규칙의 이름 및 설명을 입력한 다음 마침을 클릭합니다.In the Name dialog, type a name and description for this rule and click Finish.

    7. 인바운드 규칙 목록에서 방금 만든 규칙을 마우스 오른쪽 단추로 클릭한 다음 동작 창에서 속성 을 선택합니다.In the Inbound Rules list, right click the rule you created, and then select Properties in the action pane.

    8. 프로토콜 및 포트 탭을 선택합니다.Select the Protocols and Ports tab.

    9. 프로토콜 종류: 상자에서는 TCP 를 선택하고 로컬 포트: 상자에서는 RPC 동적 포트 를 선택한 후에 적용, 확인을 차례로 클릭합니다.Select TCP in the Protocol type: box, select RPC Dynamic Ports in the Local port: box, click Apply, and then click OK.

디버거 시작을 위한 요구 사항Requirements for Starting the Debugger

다음 요구 사항을 충족해야 Transact-SQLTransact-SQL 디버거를 시작할 수 있습니다.All attempts to start the Transact-SQLTransact-SQL debugger must also meet the following requirements:

  • SQL Server Management StudioSQL Server Management Studio 또는 SQL Server Data ToolsSQL Server Data Tools 는 sysadmin 고정 서버 역할의 멤버인 Windows 계정으로 실행해야 합니다. must be running under a Windows account that is a member of the sysadmin fixed server roll.

  • sysadmin 고정 서버 역할의 멤버인 Windows 인증 또는 데이터베이스 엔진Database Engine 인증 로그인을 사용하여 SQL ServerSQL Server 쿼리 편집기 창을 연결해야 합니다.The 데이터베이스 엔진Database Engine Query Editor window must be connected by using either a Windows Authentication or SQL ServerSQL Server Authentication login that is a member of the sysadmin fixed server role.

  • 데이터베이스 엔진Database Engine 쿼리 편집기 창을 데이터베이스 엔진Database Engine SP2(서비스 팩 2) 이상의 SQL Server 2005SQL Server 2005 인스턴스에 연결해야 합니다.The 데이터베이스 엔진Database Engine Query Editor window must be connected to an instance of the 데이터베이스 엔진Database Engine from SQL Server 2005SQL Server 2005 Service Pack 2 (SP2) or later. 쿼리 편집기 창이 단일 사용자 모드에 있는 인스턴스에 연결되어 있는 경우에는 디버거를 실행할 수 없습니다.You cannot run the debugger when the Query Editor window is connected to an instance that is in single-user mode.

  • 서버는 RPC를 통해 클라이언트와 다시 통신해야 합니다.The server needs to communicate back to the client via RPC. SQL Server 서비스를 실행 중인 계정에 클라이언트에 대한 인증 권한이 있어야 합니다.The account under which SQL Server service is running should have authenticate permissions to the client

관련 항목:See Also

Transact-SQL 디버거 Transact-SQL Debugger
Transact-SQL 디버거 실행 Run the Transact-SQL Debugger
Transact-SQL 코드 단계별 실행 Step Through Transact-SQL Code
Transact-SQL 디버거 정보 Transact-SQL Debugger Information
데이터베이스 엔진 쿼리 편집기(SQL Server Management Studio) Database Engine Query Editor (SQL Server Management Studio)