25

我正在使用 SQL Server 2012 Express LocalDB。如果实例上没有任何活动,它们似乎会在 10 分钟后自动停止。有没有一种干净的方法可以让实例永远运行?

4

2 回答 2

32

超时可通过 T-SQL 配置'user instance timeout'选项:

sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
sp_configure 'user instance timeout', 5;
GO

超时以分钟为单位,最大值为65535。我很确定您需要在设置后重新启动实例。并且不要尝试将其设置为0,它只会使实例在启动后立即关闭,这将很难将值设置回有用的值:-)。

来源:这篇 BOL 文章包含有关用户实例的其他有用信息,这些信息也适用于 LocalDB 实例。

最后的评论

如果您需要始终运行并在计算机启动时启动的东西,您可以考虑使用常规的、基于服务的 SQL Server Express 实例。

于 2013-01-04T18:10:39.993 回答
15

以下是如何从命令行执行 Krzysztof Kozielczyk 的回答。

启动localdb实例。

C:\> sqllocaldb start v11.0
LocalDB instance "v11.0" started.

获取服务器路径,即实例管道名称。

C:\> sqllocaldb info v11.0
Name:               v11.0
Version:            11.0.3000.0
Shared name:        IIS_DB
Owner:              DESKTOP-AAAT5QS\bigfo
Auto-create:        Yes
State:              Running
Last start time:    2/17/2016 12:06:43 PM
Instance pipe name: np:\\.\pipe\LOCALDB#SH9D87FB\tsql\query

在该服务器上运行 SQL 命令。

C:\> sqlcmd -S np:\\.\pipe\LOCALDB#SH9D87FB\tsql\query

1> sp_configure 'show advanced options', 1;
2> GO

Configuration option 'show advanced options' changed from 1 to 1. 
Run the RECONFIGURE statement to install.

1> RECONFIGURE;
2> GO

1> sp_configure 'user instance timeout', 5;
2> GO

Configuration option 'user instance timeout' changed from 5 to 5. 
Run the RECONFIGURE statement to install.

1> RECONFIGURE;
2> GO

> exit
于 2016-02-17T20:21:26.737 回答