Utilizzo SQL Server 2012 Express LocalDB. Le istanze sembrano fermarsi automaticamente dopo 10 minuti se non ci sono attività su di loro. C'è un modo pulito per mantenere un'istanza in esecuzione per sempre?Come impedire l'arresto automatico di SQL Server LocalDB?
risposta
Il timeout è configurabile tramite T-SQL con 'user instance timeout'
opzione:
sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
sp_configure 'user instance timeout', 5;
GO
Il timeout viene espresso in minuti e ha un valore massimo di 65535
. Sono abbastanza sicuro che è necessario riavviare l'istanza dopo averlo impostato. E non provare a impostarlo su 0
, l'istanza si spegnerà immediatamente dopo l'avvio, il che renderà difficile riportare il valore a qualcosa di utile :-).
Fonte: this BOL article contenente altre informazioni utili sulle istanze utente che sono applicabili anche alle istanze LocalDB.
Nota finale
Se avete bisogno di qualcosa che è sempre in esecuzione e si avvia ogni volta che un computer si avvia si potrebbe anche considerare l'utilizzo normale, basata sui servizi, istanza di SQL Server Express.
Ecco come eseguire la risposta di Krzysztof Kozielczyk dalla riga di comando.
Avviare l'istanza localdb
.
C:\> sqllocaldb start v11.0
LocalDB instance "v11.0" started.
Ottieni il percorso del server, che è il nome della pipe di istanza.
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
Eseguire un comando SQL su quel server.
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