2009-02-23 10 views
7

Używam SQL Express 2008 jako zaplecza dla aplikacji internetowej, problem polega na tym, że aplikacja internetowa jest używana w godzinach pracy, więc czasami w czasie przerwy obiadowej lub przerwy, gdy nie jest zalogowany żaden użytkownik przez 20 minut, SQL Express zacznie działać w tryb bezczynności i zwolnij pamięć podręczną.Czy istnieje sposób, aby zatrzymać SQL Express 2008 z Idling?

Zdaję sobie sprawę z tego, ponieważ rejestruje coś takiego: Server wznowione wykonanie po bezczynności 9709 sekund lub Uruchomienie bazy danych „xxxxxxx” w przypadku logowania

chciałbym tego uniknąć bezczynności zachowanie , czy jest tak, aby skonfigurować SQL Express, aby zatrzymać na biegu jałowym lub przynajmniej rozszerzyć okno czasowe na dłużej niż 20 minut. Czy jest to moja jedyna opcja, aby napisać usługę, która odpytuje bazę danych co 15 minut, aby utrzymać ją w buforze?

Po przeczytaniu artykułów takich jak this nie wygląda obiecująco, ale być może istnieje ustawienie hakerskie lub rejestru, o którym ktoś wie.

Odpowiedz

8

Tego zachowania nie można konfigurować.

Musisz zaimplementować metodę odpytywania bazy danych co jakiś czas. Podobnie, jak w przypadku artykułu, do którego dodano odnośnik, ustaw właściwość AUTO CLOSE na wartość false.

1

Napisz wątek, który wykonuje proste zapytanie co kilka minut. Rozpocznij wątek w pliku global.asax Application_Start i już powinno być gotowe!

3

Wystarczy krótki zapytań SQL podoba Ci się to co kilka minut zapobiegnie SQLSERVER przed pójściem bezczynny:

SELECT TOP 0 NULL 
    FROM [master].[dbo].[MSreplication_options] 
GO 
0

Oto dobre wyjaśnienie: https://blogs.msdn.microsoft.com/sqlexpress/2008/02/22/understanding-sql-express-behavior-idle-time-resource-usage-auto_close-and-user-instances/

Cokolwiek: Nie wiem czas po sql express idzie bezczynnie. Sugeruję uruchamianie skryptu poniżej co 10 minut (może harmonogram zadań). To zapobiegnie SQL Server Express będzie bezczynny od:

SELECT TOP 0 NULL FROM [master].[dbo].[MSreplication_options] GO 

również sprawdzić, czy wszystkie dane nieruchomość baz i jest ustawione na AUTO_CLOSE = FALSE

+0

Jest łatwy w użyciu skrypt wsadowy na to: \ n –