다음을 통해 공유


sqlservr 애플리케이션

sqlservr 애플리케이션은 명령 프롬프트에서 Microsoft SQL Server 인스턴스를 시작, 중지, 일시 중지 및 계속합니다.

구문

  
      sqlservr [-sinstance_name] [-c] [-dmaster_path] [-f]   
     [-eerror_log_path] [-lmaster_log_path] [-m]  
     [-n] [-Ttrace#] [-v] [-x] [-gnumber]  

인수

-s instance_name
연결할 SQL Server 인스턴스를 지정합니다. 명명된 인스턴스를 지정하지 않으면 sqlservr이 SQL Server의 기본 인스턴스를 시작합니다.

Important

SQL Server 인스턴스를 시작할 때 해당 인스턴스에 적합한 디렉터리에서 sqlservr 애플리케이션을 사용해야 합니다. 기본 인스턴스의 경우 \MSSQL\Binn 디렉터리에서 sqlservr을 실행합니다. 명명된 인스턴스의 경우 \MSSQL$instance_name\Binn 디렉터리에서 sqlservr을 실행합니다.

-c
SQL Server 인스턴스가 Windows Service Control Manager와 독립적으로 시작되었음을 나타냅니다. 이 옵션은 명령 프롬프트에서 SQL Server를 시작할 때 SQL Server를 시작하는 데 걸리는 시간을 줄이기 위해 사용됩니다.

참고 항목

이 옵션을 사용하면 SQL Server 서비스 관리자 또는 net stop 명령을 사용하여 SQL Server를 중지할 수 없으며 컴퓨터에서 로그오프하면 SQL Server가 중지됩니다.)

-d master_path
master 데이터베이스 파일의 정규화된 경로를 나타냅니다. -dmaster_path 사이에 공백이 없어야 합니다. 이 옵션이 제공되지 않으면 기존의 레지스트리 매개 변수를 사용합니다.

-f
SQL Server 인스턴스를 최소 구성으로 시작합니다. 예를 들어 오버 커밋 메모리 같은 구성 값의 설정 때문에 서버를 시작할 수 없을 경우에 유용합니다.

-e error_log_path
오류 로그 파일의 정규화된 경로를 나타냅니다. 지정하지 않으면 기본 위치는 <기본 인스턴스에 대한 Drive>:\Program Files\Microsoft SQL Server\MSSQL\Log\Errorlog이고<, 드라이브>:\Program Files\Microsoft SQL Server\MSSQL$instance_name\Log\Errorlog는 명명된 인스턴스에 대한 것입니다. -eerror_log_path사이에 공백이 없어야 합니다.

-l master_log_path
master 데이터베이스 트랜잭션 로그 파일의 정규화된 경로를 나타냅니다. -lmaster_log_path 사이에 공백이 없어야 합니다.

-m
단일 사용자 모드에서 SQL Server 인스턴스를 시작하도록 나타냅니다. SQL Server를 단일 사용자 모드로 시작하면 단일 사용자만 연결할 수 있습니다. 완료된 트랜잭션이 디스크 캐시에서 데이터베이스 디바이스에 정기적으로 기록되도록 보장하는 체크포인트 메커니즘은 시작되지 않습니다. (일반적으로 이 옵션은 복구해야 할 시스템 데이터베이스에 문제가 있는 경우에 사용됩니다.) sp_configure allow updates 옵션을 활성화합니다. 기본적으로 allow updates는 사용할 수 없습니다.

-n
명명된 SQL Server인스턴스를 시작할 수 있습니다. -s 매개 변수를 설정하지 않으면 기본 인스턴스가 시작됩니다. sqlservr.exe를 시작하기 전에 명령 프롬프트에서 해당 인스턴스에 적합한 BINN 디렉터리로 전환해야 합니다. 예를 들어 Instance1이 이진 파일에 대해 \mssql$Instance1을 사용할 경우, 사용자는 \mssql$Instance1\binn 디렉터리에서 sqlservr.exe -s instance1을 시작해야 합니다. -n 옵션을 사용하여 SQL Server 인스턴스를 시작하는 경우 -e 옵션도 사용하는 것이 좋습니다. 그렇지 않으면 SQL Server 이벤트가 기록되지 않습니다.

-T 추적#
지정된 추적 플래그( SQL Server trace# ) 적용 시인스턴스를 시작해야 함을 나타냅니다. 추적 플래그는 비표준 동작으로 서버를 시작하는 데 사용합니다. 자세한 내용은 추적 플래그(Transact-SQL)를 참조하세요.

Important

추적 플래그를 지정할 때 -T를 사용하여 추적 플래그 번호를 전달합니다. SQL Server에서 소문자 t(-t)를 사용할 수는 있습니다. 그러나 -t는 SQL Server 지원 엔지니어에게 필요한 다른 내부 추적 플래그를 설정합니다.

-v
서버 버전 번호를 표시합니다.

-x
CPU 시간 및 캐시 적중 비율 통계를 유지하지 않도록 설정합니다. 최고의 성능을 허용합니다.

-g memory_to_reserve
SQL Server가 SQL Server 프로세스 내에서 메모리 할당에 사용할 수 있지만 SQL Server 메모리 풀 외부에서는 사용할 수 있는 메모리의 정수를 지정합니다. 메모리 풀 외부의 메모리는 확장 프로시저 .dll 파일, 분산 쿼리에서 참조하는 OLE DB 공급자 및 Transact-SQL 문에서 참조된 자동화 개체와 같은 항목을 로드하는 데 SQL Server에서 사용하는 영역입니다. 기본값은 256MB입니다.

이 옵션을 사용하면 메모리 할당을 조정하는 데 도움이 될 수 있지만, 실제 메모리가 애플리케이션에서 사용할 수 있는 가상 메모리의 운영 체제에서 설정한 구성된 제한을 초과하는 경우에만 가능합니다. 이 옵션은 SQL Server의 메모리 사용 요구 사항이 비정형이고 SQL Server 프로세스의 가상 주소 공간이 완전히 사용 중인 대용량 메모리 구성에 적합할 수 있습니다. 이 옵션을 잘못 사용하면 SQL Server 인스턴스가 시작되지 않거나 런타임 오류가 발생할 수 있는 조건이 발생할 수 있습니다.

SQL Server 오류 로그에 다음 경고가 표시되지 않는 한 -g 매개 변수의 기본값을 사용합니다.

  • "실패한 가상 할당 바이트: FAIL_VIRTUAL_RESERVE <크기>"

  • "실패한 가상 할당 바이트: FAIL_VIRTUAL_COMMIT <크기>"

이러한 메시지는 확장 저장 프로시저 .dll 파일 또는 자동화 개체와 같은 항목의 공간을 찾기 위해 SQL Server 메모리 풀의 일부를 해제하려고 함을 나타낼 수 있습니다. 이 경우 -g``스위치로 예약되는 메모리 양을 늘려 보세요.

기본값보다 낮은 값을 사용하면 버퍼 풀 및 스레드 스택에 사용할 수 있는 메모리 양이 증가합니다. 이렇게 하면 확장 저장 프로시저, 분산 쿼리 또는 자동화 개체를 많이 사용하지 않는 시스템의 메모리 집약적 워크로드에 몇 가지 성능 이점을 제공할 수 있습니다.

설명

대부분의 경우 sqlservr.exe 프로그램은 문제 해결 또는 주요 유지 관리에만 사용됩니다. sqlservr.exe를 사용하여 명령 프롬프트에서 SQL Server를 시작할 경우 SQL Server는 서비스로 실행되지 않으므로 net 명령을 사용하여 SQL Server를 중지할 수 없습니다. 사용자는 SQL Server에 연결할 수 있지만 SQL Server 도구는 서비스의 상태를 표시하므로 SQL Server 구성 관리자는 서비스가 중지되었음을 올바르게 나타냅니다. SQL Server Management Studio는 서버에 연결할 수 있지만 서비스가 중지되었음을 나타내기도 합니다.

호환성 지원

-h 매개 변수는 SQL Server 2014에서 지원되지 않습니다. 이 매개 변수는 이전 버전의 32비트 SQL Server 인스턴스에서 AWE를 사용할 때 핫 추가 메모리 메타데이터에 대한 가상 메모리 주소 공간을 예약하는 데 사용되었습니다. 자세한 내용은 SQL Server 2014에서 지원되지 않는 SQL Server 기능을 참조하세요.

참고 항목

데이터베이스 엔진 서비스 시작 옵션