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地址没有启用
莫谈他人高薪,且看闲时谁在拼.