资源池“internal”没有足够的系统内存来运行此查询
在配置Sql Server的内存时,不小心少了几个0,突然Sql Server直接挂掉了,试了几次起不来
查看日志,看到有报错:资源池“internal”没有足够的系统内存来运行此查询
应该就是刚才的修改内存操作,导致的内存过小,服务起不来
以最小模式启动sql
cd /D C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Binn\sqlservr.exe
sqlservr.exe -f -sMSSQLSERVER
还需要加上定制化的一些数据文件、日志文件、错误日志的目录,可以在配置管理器的启动参数里查看,也可以直接将-f加入到启动参数里
启动后发现无法连接服务,只允许单个管理员用户登录,查看日志有个1434的连接,于是将AlwaysOn禁用,成功登录
马上修改内存设置,重启后服务正常。
EXEC sp_configure 'show advanced options', '1' RECONFIGURE WITH OVERRIDE;
EXEC sp_configure 'max server memory', 400000 RECONFIGURE WITH OVERRIDE;
EXEC sp_configure 'show advanced options', '0' RECONFIGURE WITH OVERRIDE;
GO
还发现有一个-g的启动参数可以配置启动使用的内存,-g 400000
mark一下,没有尝试。
参考:https://blog.csdn.net/qing7416/article/details/77165115