SQL Server 가 max server memory 를 잘못 설정 한 처리 방법

7224 단어 maxservermemory
어제 인터넷 에 올 라 온 한 네티즌 은 동료 가'max server memory'를 10M 으로 잘못 설정 한 후 SQL Server 데이터베이스 에 로그 인 할 수 없다 고 말 했다.당시 에 나 는 간단하게 테스트 를 했 는데 오늘 시간 이 나 면 모든 과정 을 정리 하고 여기에 기록 했다.
SSMS 의 UI 인터페이스 에'max server memory'를 설정 합 니 다.10M 크기 로 설정 하 더 라 도'몰래'기본 값 은 128 M 으로 변 경 됩 니 다.Profile 로 추적 하거나 설정 하면 설정 값 을 몰래'수정'했 습 니 다(128 M 으로 변경).

EXEC sys.sp_configure N'max server memory (MB)', N'128'
GO
RECONFIGURE WITH OVERRIDE
GO
 
Configuration option 'max server memory (MB)' changed from 4096 to 128. Run the RECONFIGURE statement to install.
만약 이러한 세부 사항 에 주의 하지 않 거나 이 일 을 믿 지 않 는 다 면 스 크 립 트 로 테스트 할 수도 있 습 니 다.다음 과 같이 이 값(10m)이 유효한 값 이 아니 라 는 것 을 알려 줍 니 다.

"max server memory"에 대해 오 류 를 설정 하면 기본적으로 모든 조회 나 연결 에 다음 과 같은 오류 가 발생 합 니 다.
An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
 
------------------------------
There is insufficient system memory in resource pool 'internal' to run this query. (Microsoft SQL Server, Error: 701)
 
 
 
 
 
 
------------------------------
ADDITIONAL INFORMATION:
 
A connection was successfully established with the server,but then an error occurred during the pre-login handshake.(provider:TCP Provider,error:0-원 격 호스트 가 기 존 연결 을 강제로 닫 았 습 니 다.)(Microsoft SQL Server, Error: 10054)
 
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=10054&LinkId=20476
 
------------------------------
원 격 호스트 가 기 존 연결 을 강제로 닫 았 습 니 다. 
데이터베이스 의 오류 로 그 를 검사 하면 추가 정보 가 많 습 니 다.발췌 부분 은 다음 과 같 습 니 다.
.........................................................
.........................................................
2019-12-24 10:15:32.84 spid53      There is insufficient system memory in resource pool 'internal' to run this query.
2019-12-24 10:15:52.88 spid53      Error: 18056, Severity: 20, State: 29. (Params:). The error is printed in terse mode because there was error during formatting. Tracing, ETW, notifications etc are skipped.
2019-12-24 10:15:55.89 Server      Error: 17300, Severity: 16, State: 1. (Params:). The error is printed in terse mode because there was error during formatting. Tracing, ETW, notifications etc are skipped.
2019-12-24 10:16:12.70 Server       Failed allocate pages: FAIL_PAGE_ALLOCATION 1
2019-12-24 10:16:12.70 Server  
 
Process/System Counts                         Value
---------------------------------------- ----------
Available Physical Memory                6614454272
Available Virtual Memory                 140726213148672
Available Paging File                    7776440320
Working Set                                95432704
Percent of Committed Memory in WS               100
Page Faults                                   57030
System physical memory high                       1
System physical memory low                        0
Process physical memory low                       1
Process virtual memory low                        0
2019-12-24 10:16:12.70 Server     
Memory Manager                                   KB
---------------------------------------- ----------
VM Reserved                                10652776
VM Committed                                  57972
Locked Pages Allocated                        86472
Large Pages Allocated                             0
Emergency Memory                               1024
Emergency Memory In Use                          16
Target Committed                             131072
Current Committed                            144448
Pages Allocated                               84176
Pages Reserved                                    0
Pages Free                                        0
Pages In Use                                 144432
Page Alloc Potential                         -19912
NUMA Growth Phase                                 2
Last OOM Factor                                   1
Last OS Error                                     0
2019-12-24 10:16:12.70 Server     
Memory node Id = 0                               KB
---------------------------------------- ----------
VM Reserved                                10652712
VM Committed                                  57952
Locked Pages Allocated                        86472
Pages Allocated                               84176
Pages Free                                        0
Target Committed                             131048
Current Committed                            144424
Foreign Committed                                 0
Away Committed                                    0
Taken Away Committed                              0
2019-12-24 10:16:12.70 Server     
Memory node Id = 64                              KB
---------------------------------------- ----------
VM Reserved                                       0
VM Committed                                     20
Locked Pages Allocated                            0
2019-12-24 10:16:12.70 Server     
MEMORYCLERK_SQLGENERAL (node 0)                  KB
---------------------------------------- ----------
.........................................................
......................................................... 
이 문 제 를 해결 하려 면 데이터베이스 서 비 스 를 닫 고 단일 사용자 모드+최소 설정 으로 데이터베이스 인 스 턴 스 를 시작 한 다음 max server memory 인 자 를 수정 해 야 합 니 다.데이터 베 이 스 를 닫 는 과정 에서 문제 가 발생 하면 서버 재 부팅 을 통 해 문 제 를 해결 할 수 있 습 니 다.state[MSSQLSERVER]): Stop pending)
메모:단일 사용자 모드 로 시작 한 다음 sqlcmd 로 데이터 베 이 스 를 연결 하면 다음 오류 가 발생 할 수 있 으 므 로 단일 사용자 모드+최소 설정 으로 데이터 베 이 스 를 시작 해 야 합 니 다.


EXEC sys.sp_configure 'max server memory (MB)',4096; #            。
 
RECONFIGURE
 
GO
그리고 SQL Server 인 스 턴 스 를 다시 시작 하면 문제 가 해 결 됩 니 다.물론 master 라 이브 러 리 의 백업 을 다른 테스트 데이터 베이스 로 복원 한 다음 에 master 데이터 베 이 스 를 복원 한 관련 파일 로 현재 데이터베이스 master 의 관련 파일 을 교체 하여 문 제 를 해결 할 수 있 습 니 다.그러나 그것 은 상대 적 으로 번 거 로 울 것 이다.이런 방법 은 간편 하고 효과 가 없다!
C:\Windows\system32>net stop mssqlserver
The SQL Server (MSSQLSERVER) service is stopping.
The SQL Server (MSSQLSERVER) service was stopped successfully.
C:\Windows\system32>net start mssqlserver
The SQL Server (MSSQLSERVER) service is starting.
The SQL Server (MSSQLSERVER) service was started successfully.
총결산
이상 은 이 글 의 모든 내용 입 니 다.본 고의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 참고 학습 가 치 를 가지 기 를 바 랍 니 다.여러분 의 저희 에 대한 지지 에 감 사 드 립 니 다.

좋은 웹페이지 즐겨찾기