Как предотвратить автоматическое отключение SQL Server LocalDB?

Я использую SQL Server 2012 Express LocalDB. Кажется, что экземпляры автоматически останавливаются через 10 минут, если на них нет активности. Есть ли чистый способ поддерживать работу экземпляра вечно?


person user1947865    schedule 04.01.2013    source источник


Ответы (2)


Время ожидания настраивается через 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 на основе службы.

person Krzysztof Kozielczyk    schedule 04.01.2013
comment
Обратите внимание, что минимальное значение параметра тайм-аута равно 5, поэтому невозможно установить значение тайм-аута ниже 5 минут. - person Uttam; 24.09.2019

Вот как сделать ответ Кшиштофа Козельчика из командной строки.

Запустите экземпляр 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
person Shaun Luttin    schedule 17.02.2016
comment
у меня не было канала имени, поэтому я использовал этот sqlcmd -S (localdb)\MSSQLLocalDB - person bh_earth0; 16.05.2019
comment
Чтобы увидеть текущую настройку, это sp_configure 'user instance timeout' - person Nelson; 22.08.2019