sqlserver最大内存设置太小导致无法启动sql服务

今天查了一下sqlserver windows nt-64 bit 内存占用过多 右键设置下最大内存它的占用内存可以降低一些
于是我手贱把本地的设置成100M 设置太小造成sql服务无法启动 还好没有动服务器上的

解决方案: 

 
1.正常关闭SQL Server服务,如果是集群,需要先关停止集群角色防止故障转移,然后再单独关闭服务。

cmd命令:net stop mssqlserver

--注意这一步可能会使实例处于挂起状态很长时间,但是正常关闭是必须的,直接杀进程可能造成数据文件损坏。

 

2.找这个sqlservr.exe的目录(每个人的物理地址可能多少有差异,请注意),启动cmd,并执行命令:
首先开启一个CMD窗口1,执行cmd命令:  
cd   C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn
接着执行cmd命令:sqlservr.exe -f -s MSSQLSERVER  要用管理员权限打开cmd
MSSQLSERVER 默认实例名,可修改为你实际实例名修改
-f最小模式启动实例
3.不要关闭第一次cmd命令,注意不要关闭,另外开启一个新的cmd 命令窗口2,立即运行下面命令进入命令行模式 
执行:sqlcmd -E -s MSSQLSERVER
--注释
sqlcmd -E 
--如果是命名实例则:
sqlcmd -E -S IP\<实例名> 
注意命名实例需要开启SQL server Browser服务,才能连接。
4.修复,就本故障来说,修改内存最大值为不限制
接着在第二个窗口有限一下修改配置
 
EXECsp_configure 'show advanced options', '1' RECONFIGURE WITH OVERRIDE;
EXEC sp_configure 'max server memory', 2147483647 RECONFIGURE WITH OVERRIDE;
EXEC sp_configure 'show advanced options', '0' RECONFIGURE WITH OVERRIDE;
GO
5.关闭cmd窗口1,正常启动SQLServer实例(注意关闭窗口1,窗口2不要关闭)
启动成功则OK,如果启动不成功,检查错误日志修复其它参数,直至启动成功。
启动成功后可根据需要重新调整合适的参数
后话,即使上边动作都按照操作执行,可能还会遇到无法登陆的其他情况,具体问题具体对待。
基本上无法登陆情况总结如下:
1.sql服务没有启动 2.TCP/IP没有开启 3.TCP/IP属性,IP地址没有启用

 

猜你喜欢

转载自www.cnblogs.com/LiChen19951127/p/12911380.html