Problembehandlung: Das Timeout ist abgelaufen
Der Fehler "Das Timeout ist abgelaufen" tritt meist dann auf, wenn eine Instanz von SQL Server Database Engine (Datenbankmodul) nicht ausgeführt wird, wenn der Servername falsch eingegeben wurde oder wenn Netzwerkprobleme oder Firewalls vorhanden sind.
Fehlertext
In SQL Server Management Studio wird dieser Fehler wie folgt angezeigt:
"Es kann keine Verbindung mit <servername> hergestellt werden."
"Das Timeout ist abgelaufen. Das Zeitlimit wurde vor dem Beenden des Vorgangs überschritten oder der Server reagiert nicht. (Microsoft SQL Server, Fehler: -2)"
Zu den aus sqlcmd stammenden möglichen Timeoutfehlern gehören:
"SQL Network Interfaces: Fehler beim Suchen des angegebenen Servers oder der angegebenen Instanz."
"Sqlcmd: Fehler: Microsoft SQL Server Native Client: Client kann keine Verbindung herstellen."
"Sqlcmd: Fehler: Microsoft SQL Server Native Client: Anmeldungstimeout abgelaufen."
"Die Verbindung zu SQL Server konnte nicht geöffnet werden."
"Fehler beim Herstellen einer Verbindung zum Server. Beim Herstellen der Verbindung mit SQL Server kann dieser Fehler dadurch verursacht worden sein, dass die Standardeinstellungen von SQL Server keine Remoteverbindungen zulassen."
Typische Ursachen für diesen Fehler
Ursache |
Lösung |
---|---|
Der Servername wurde falsch eingegeben. |
Wiederholen Sie den Vorgang mit dem richtigen Servernamen. |
Der SQL Server-Dienst wird auf dem Server nicht ausgeführt. |
Starten Sie die Instanz von SQL Server Database Engine (Datenbankmodul). |
Der TCP/IP-Port für die Database Engine (Datenbankmodul)-Instanz wird durch eine Firewall blockiert. |
Konfigurieren Sie die Firewall so, dass der Zugriff auf Database Engine (Datenbankmodul) zulässig ist. |
Port 1433 wird von Database Engine (Datenbankmodul) nicht überwacht, weil eine Änderung vorgenommen wurde, oder weil es sich nicht um die Standardinstanz handelt, und der SQL Server-Browser-Dienst wird nicht ausgeführt. |
Starten Sie den SQL Server-Browser-Dienst, oder stellen Sie eine Verbindung unter Angabe der TCP/IP-Portnummer her. |
Der SQL Server-Browser-Dienst wird ausgeführt, aber der UDP-Port 1434 wird durch eine Firewall blockiert. |
Konfigurieren Sie die Firewall so, dass der Zugriff auf den UDP-Port 1434 auf dem Server zulässig ist, oder stellen Sie eine Verbindung unter Angabe der TCP/IP-Portnummer her. |
Für den Client und den Server ist nicht das gleiche Netzwerkprotokoll konfiguriert. |
Bestätigen Sie mit dem SQL Server-Konfigurations-Manager, dass der Server und der Client mindestens ein gemeinsames aktiviertes Protokoll haben. |
Das Netzwerk kann den Servernamen in eine IP-Adresse auflösen. Dies kann mit dem PING-Programm getestet werden. |
Beheben Sie in Ihrem Netzwerk das Problem mit der Auflösung des Computernamens, oder stellen Sie mit der IP-Adresse des Servers eine Verbindung her. Dies ist kein SQL Server-Problem. Weitere Informationen erhalten Sie in der Windows-Dokumentation oder von Ihrem Netzwerkadministrator. |
Das Netzwerk kann mithilfe der IP-Adresse keine Verbindung herstellen. Dies kann mit dem PING-Programm getestet werden. |
Beheben Sie das TCP/IP-Problem in Ihrem Netzwerk. Dies ist kein SQL Server-Problem. Weitere Informationen finden Sie in der Windows-Dokumentation, oder Sie erhalten diese von Ihrem Netzwerkadministrator. |
Ungewöhnliche Fehler
Mehrere Server-IP-Adressen
Clients unter Windows Vista oder Windows Server 2008 können diese Fehlermeldung erhalten, wenn sie eine Verbindung zu einer benannten Instanz von SQL Server herstellen, die auf einem gruppierten oder einem nicht gruppierten Computer mit mehreren IP-Adressen installiert ist. Dieses Problem kann für alle Versionen von SQL Server auftreten.
Ursache
Beim Herstellen einer Verbindung zu einer benannten Instanz auf einem Remotecomputer stellt der Client mithilfe des UDP (User Datagram Protocol) die Verbindung mit dem SQL Server-Browser-Dienst auf dem SQL Server-Computer oder -Cluster her, um den Verbindungsendpunkt abzurufen (TCP-Portnummer oder Named Pipe).
Firewalls auf dem Windows Vista- oder Windows Server 2008-Client erlauben keine lose Quellenzuordnung für UDP. Das heißt, die Antwort muss von derselben IP-Adresse zurückgegeben werden, die abgefragt wurde. Wenn die Antwort nicht von derselben IP-Adresse zurückgegeben wird, die ursprünglich abgefragt wurde, löscht die Client-Firewall das Paket. Dieses Problem kann auftreten, wenn Sie versuchen, eine Verbindung zu einem gruppierten oder einem nicht gruppierten Computer mit mehreren IP-Adressen herzustellen.
In der folgenden Tabelle werden die Betriebssystemkombinationen beschrieben, die bewirken können, dass UDP-Pakete gelöscht werden. Dies verhindert das Herstellen einer Verbindung zu einer benannten Instanz von SQL Server oder einer Standardinstanz von SQL Server, die nicht den TCP-Port 1433 überwacht.
Client-Betriebssystem |
Betriebssystem, das SQL Server ausführt |
SQL Server 2008 result |
SQL Server 2005 result |
---|---|---|---|
Windows XP oder Windows Server 2003 |
Windows XP oder Windows Server 2003 |
UDP-Pakete werden nicht gelöscht. |
UDP-Pakete werden nicht gelöscht. |
Windows XP oder Windows Server 2003 |
Windows Vista oder Windows Server 2003 |
UDP-Pakete werden nicht gelöscht. |
UDP-Pakete werden nicht gelöscht. |
Windows Vista oder Windows Server 2008 |
Windows XP oder Windows Server 2003 |
UDP-Pakete werden gelöscht. Fehler beim Herstellen einer Verbindung. |
UDP-Pakete werden gelöscht. Fehler beim Herstellen einer Verbindung. |
Windows Vista oder Windows Server 2008 |
Windows Vista oder Windows Server 2008 (x86, IA64) |
UDP-Pakete werden nicht gelöscht. |
UDP-Pakete werden gelöscht. Fehler beim Herstellen einer Verbindung. |
Windows Vista oder Windows Server 2008 |
Windows Vista oder Windows Server 2008 (x64) |
UDP-Pakete werden gelöscht. Fehler beim Herstellen einer Verbindung. |
UDP-Pakete werden gelöscht. Fehler beim Herstellen einer Verbindung. |
Lösung
Führen Sie eine der folgenden Aktionen aus, um dieses Problem zu umgehen:
Geben Sie die TCP-Portnummer oder den Named Pipe-Namen als Teil des Servernamens in der Verbindungszeichenfolge an.
Erstellen Sie mit der erweiterten Sicherheit eine Ausnahme in der Windows-Firewall auf dem Clientcomputer.
Vorsicht Ausnahmen in der Firewall können einen Computer oder ein Netzwerk verwundbarer für Angriffe durch böswillige Benutzer oder böswillige Software wie Viren machen. Diese Umgehung des Problems wird nicht empfohlen, aber wir liefern diese Informationen, damit Sie sie in Fällen implementieren können, in denen es keine andere praktikable Alternative gibt.
Die Ausnahme kann eine der folgenden Ausnahmen sein:
Hinzufügen einer Ausnahmeregel für die Anwendung, die eine Verbindung mit SQL Server herstellt.
Hinzufügen einer Regel für den Eingang, die Datenverkehr von allen möglichen IP-Adressen des SQL Server-Computers oder -Clusters zulässt.
Türkisch oder Azeri
Verbindungsversuche können einen Fehler erzeugen, wenn als aktuelle Sprache Türkisch oder Aserbaidschanisch festgelegt ist und der Servername "I" enthält. Um dieses Problem zu vermeiden, stellen Sie mithilfe der IP-Adresse eine Verbindung mit dem Server her. Falls "I" im Instanznamen vorkommt, geben Sie beim Herstellen der Verbindung die TCP/IP-Portnummer an. Verwenden Sie einen Alias, um eine Verbindung mit einem bestimmten Port herzustellen.
Hinweis |
---|
Verwenden Sie für die Problembehandlung bei Verbindungsproblemen das Lernprogramm Lernprogramm: Erste Schritte mit dem Datenbankmodul. |