현재 한 명의 관리자 만 연결할 수 있습니다 (MS SQL Server 오류 18461).


14

SQL Server에 약간의 메모리를 제공하여 복구 할 것으로 생각되는 효과를 실험하고있었습니다.

200MB의 메모리를 사용하도록 SQL Server를 구성했지만 시작하지 않으려 고 인터넷에서 일부 검색을 수행했으며 단일 사용자 모드에서 SQL Server를 시작하는 것이 좋습니다. 그러나 오류가 발생합니다

사용자 A의 로그인 실패. 이유 : 서버가 단일 사용자 모드에 있습니다. 현재 한 명의 관리자 만 연결할 수 있습니다 (Microsoft SQL Server, 오류 : 18461).

여기에 이미지 설명을 입력하십시오

SQL Server 에이전트를 중지했습니다.


2
200MB의 메모리 만 필요한 이유는 Express Edition의 경우 최소 512MB가 필요합니다. msdn.microsoft.com/ko-kr/library/ms143506(v=sql.120).aspx#pmosr
McNets

답변:


23

단일 사용자 모드에서 SQL Server를 시작하면 한 명의 관리자 만 동시에 연결할 수 있습니다.

여기서 일어날 수있는 일은 일부 서비스가보고 서비스 또는 SQL Server 에이전트와 같은 sysadmin 로그인을 사용하여 연결하고 있다는 것입니다.

단일 사용자 모드에서 SQL Server를 시작할 때 해당 응용 프로그램 만 연결할 수 있도록 클라이언트 응용 프로그램을 지정하는 옵션이 있습니다.

다음과 같은 명령 줄 옵션을 살펴보십시오 .

-m "클라이언트 응용 프로그램 이름"

SQLCMD 또는 SQL Server Management Studio와 함께 -m 옵션을 사용하면 지정된 클라이언트 응용 프로그램으로의 연결을 제한 할 수 있습니다. 예를 들어, -m "SQLCMD"는 단일 연결로 연결을 제한하며 해당 연결은 자신을 SQLCMD 클라이언트 프로그램으로 식별해야합니다. 단일 사용자 모드에서 SQL Server를 시작하고 알 수없는 클라이언트 응용 프로그램이 사용 가능한 유일한 연결을 수행 할 때이 옵션을 사용하십시오. Management Studio에서 쿼리 편집기를 통해 연결하려면 -m "Microsoft SQL Server Management Studio-쿼리"를 사용하십시오.

클라이언트 응용 프로그램 이름은 대소 문자를 구분합니다.

이 방법으로 연결할 수 있으면 최대 서버 메모리를 적당한 것으로 변경하십시오. 그렇지 않으면 "파이프의 다른 쪽 끝에 프로세스가 없습니다"라는 메시지가 표시되므로 서버가 실행 중이라고 가정 할 수 있기 때문에 연결할 수 있다고 가정합니다.

그러나 메모리 구성이 허용하지 않기 때문에 SQL Server에 로그인 할 수없는 경우 -f옵션을 사용하여 최소 구성으로 SQL Server를 시작할 수 있습니다 .

-에프

최소한의 구성으로 SQL Server 인스턴스를 시작합니다. 구성 값 (예 : 초과 커밋 메모리) 설정으로 인해 서버가 시작되지 않은 경우에 유용합니다. 최소 구성 모드에서 SQL Server를 시작하면 SQL Server가 단일 사용자 모드가됩니다. 자세한 정보는 다음에 나오는 -m에 대한 설명을 참조하십시오.

참조 : 실수로 "최대 서버 메모리"를 0으로 설정 한 후 SQL Server를 시작할 수 없습니다


7
  • 최소 구성 모드에서 SQL 인스턴스 시작

    NET START MSSQLSERVER /f
  • 동일한 cmd 창에서 인스턴스에 연결하고 최대 메모리 설정을 변경하십시오.

    SQLCMD -S Server/Instance -E

    다음과 같은 프롬프트가 나타납니다.

    1> 

기본적으로 최대 메모리 설정을보고 변경하지 못할 수 있습니다. 이 동작을 수정하려면 아래 쿼리를 사용하십시오.

sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE;  
GO  
sp_configure 'max server memory', 4096;  
GO  
RECONFIGURE;  
GO  

Configuration Manager에서 인스턴스를 다시 시작하십시오.


"실수로"max server memory "를 0으로 설정 한 후 <SQL Server에 대한 최상의 솔루션은 시작할 수 없습니다"및 "파이프의 다른 쪽 끝에 프로세스가 없습니다"오류
faza

-1

나는 비슷한 문제에 직면했다. "SQL Server (MSSQLSERVER)"를 중지했다가 다시 시작하여 문제를 해결했습니다. 프로세스를 다시 시작한 후 문제없이 연결할 수있었습니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.