SQL-Server, Verhalten bei Systemstart

dherr

Benutzer
Beiträge
16
Hallo zusammen, folgendes hätte ich gern diskutiert:

Beim Systemstart des Computers (win11 prof. und SQL Server) wird ja die Verbindung zum SQL-Server automatisch durchgeführt.
Bei mir wird die Verbindung zu 14 Datenbanken erstellt. Das dauert ne Weile.
Nun starte ich via shell:startup mein Programm (VBnet) und lade mittels SELECT-Anweisung eine der Datenbanken und eine bestimmte Tabelle in ein DataSet.
Die Select.Anweisung enthält TIMEOUT=30.
Dieses Laden funktioniert nicht, mein Programm geht in Fehler, dass eben der Server noch nicht bereit sei,
Ich habe mehrere Versuche unternommen, u.a, mit einem TIMEOUT=300, und in diesem Falle wird dann das von mir gewünschte Laden der Daten ausgeführt.
D.h. wohl, dass der Server doch eine gewisse Zeit braucht, bis das System die Verbindung herstellt.

Die Frage ist nun, ob man bevor die SELECT-Anweisung ausgeführt wird, eine Prüfung durchführen kann, ob und wann die Verbindung zum Server steht...

Grüße - Dietrich
 
Werbung:
Hallo Dietrich, hier liegen mehrere Missverständnisse vor. 1. beim Starten des SQL Servers werden keine Verbindungen zu den Datenbanken hergestellt, es sei denn Du hast eine Anwendung, die das macht. Der SQL Server macht das jedenfalls nicht (ok, der SQL Server Agent macht das schon). Evtl. meinst Du das hochfahren der Datenbanken. Das kannste im Errorlog des SQL Server nachschauen wie lange das dauert. 2. die Datenbank lädst Du nicht sondern nur Daten. 3. Wenn deine Abfrage in den 30 Sekunden Timeout reinläuft ist deine Abfrage lahm oder du holst keine Ahnung wie viele Millionen an Zeilen. SQL Server selbst kennt keinen Timeout bei Abfragen. 4. solltest Du die Laufzeit deiner Abfrage im SSMS überprüfen und ggf. das Statement tunen.
 
Zurück
Oben