SQL Server最大内存设为0后的处置办法

Posted Leohahah

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server最大内存设为0后的处置办法相关的知识,希望对你有一定的参考价值。

故障说明:
远程调整实例内存时疏忽,将实例最大内存调整为了0,因此最大内存变成了128MB的最小值。
解决方式:
1.正常关闭SQL Server服务,如果是集群,需要先关停止集群角色防止故障转移,然后再单独关闭服务。
--注意这一步可能会使实例处于挂起状态很长时间,但是正常关闭是必须的,直接杀进程可能造成数据文件损坏。
2.以"not as a service"的模式启动实例。
cd D:\\Microsoft SQL Server\\MSSQL11.MSSQLSERVER\\MSSQL\\Binn
sqlservr.exe -sMSSQLSERVER -mSQLCMD –c -f -m

这样以最小配置+单用户模式单独启动sqlserver服务,注意不要关闭此窗口,否则服务关闭。

3.重开一个cmd窗口,连接数据库

sqlcmd -E  (-E只是windows身份验证,从而使本地登录无需账号名密码)
--如果是命名实例则:
sqlcmd -E -S IP\\<实例名> 
注意命名实例需要开启SQL server Browser服务,才能连接。
EXEC sys.sp_configure N\'show advanced options\', N\'1\'  RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N\'max server memory (MB)\', N\'5000\'
GO
RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N\'show advanced options\', N\'0\'  RECONFIGURE WITH OVERRIDE
GO

4.修改内存完毕后,关闭sqlservr.exe窗口,重启实例服务即可。

 

 

以上是关于SQL Server最大内存设为0后的处置办法的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server2008 安装失败后的解决办法

windows server2012R2 64位系统中安装SQL server2008 32位最大使用内存是多少?

SQL Server没有足够的内存继续执行程序 (mscorlib)的解决办法

MS SQL SERVER执行大脚本文件时,提示“内存不足”的解决办法

sql server 性能调优之 逻辑内存消耗最大资源分析1 (自sqlserver服务启动以后)

SQL Server 没有足够的内存继续执行程序 (mscorlib)的解决办法