SQL Server最大内存设设置太小导致无法启动SQL 服务原创
4人赞赏了该文章
2,003次浏览
编辑于2020年12月25日 10:33:13
摘要由AI智能服务提供
本文介绍了在SQL Server中设置最大服务器内存过小导致服务无法启动的问题及解决方案。解决方案包括通过cmd启动最精简版SQL Server服务,在该服务上修改内存设置,并重启服务。正常关闭服务是必要步骤,以避免数据损坏。文章还提供了修改内存配置的具体SQL命令,并指出可能遇到的无法登录情况及其原因。
场景
SQL Server 右键属性,设置服务器属性最大服务器内存为 100MB,设置太小造成SQL 服务无法启动。
很显然问题原因是:限制内存并应用后,SQLServer内存不足自动停
止,并且无法正常启动之
解决方案
查了些资料,都是从cmd启动个最精简版的sqlserver服务,然后在上面执行设置代码,最后重启成功。
正常关闭SQL Server服务,如果是集群,需要先关停止集群角色防止故障转移,然后再单独关闭服务。
cmd命令:net stop mssqlserver
--注意这一步可能会使实例处于挂起状态很长时间,但是正常关闭是必须的,直接杀进程可能造成数据文件损坏。
图一 sqlservr.exe的目录:(定位到目录)
执行cmd命令: cd C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn
图二 打开cmd命令,定位到 sqlservr.exe的目录,并执行命令 sqlservr.exe -f -s MSSQLSERVER
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地址没有启用
赞 4
4人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读