Problem
System.Data.SqlClient.SqlException (0x80131904)
Es konnte keine Verbindung mit der Datenquelle hergestellt werden
Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte.
Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server. Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden. Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt. (provider: TCP Provider, error: 0 – Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte)
Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server.
Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server. Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden. Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt. (provider: TCP Provider, error: 0 – Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte)
Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden.
Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt.
provider: TCP Provider, error: 0 – Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte.
provider: TCP Provider, error: 0 – No connection could be made because the target machine actively refused it
Unknown SQL Exception 10061 occurred
Details
Im ULS-Log und in der Windows-Ereignisanzeige sind ständig Meldungen dieser Art zu sehen:
- System.Data.SqlClient.SqlException (0x80131904)
- Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server.
- Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden. Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt.
- System.ComponentModel.Win32Exception (0x80004005): Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte
- provider: TCP Provider, error: 0 – Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte
- provider: TCP Provider, error: 0 – No connection could be made because the target machine actively refused it
- Source: ‚.Net SqlClient Data Provider‘ Number: 10061 State: 0 Class: 20 Procedure: “ LineNumber: 0
- Unknown SQL Exception 10061 occurred
ULS-Log Einträge
System.Data.SqlClient.SqlException (0x80131904): Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server. Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden. Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt. (provider: TCP Provider, error: 0 - Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte.) ---> System.ComponentModel.Win32Exception (0x80004005): Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte bei System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) bei System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) bei System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) bei System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) bei System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry) bei System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) bei System.Data.SqlClient.SqlConnection.Open() bei Microsoft.SharePoint.Utilities.SqlSession.OpenConnection() bei Microsoft.SharePoint.Utilities.SqlSession.ExecuteReader(SqlCommand command, CommandBehavior behavior, SqlQueryData monitoringData, Boolean retryForDeadLock) ClientConnectionId:00000000-0000-0000-0000-000000000000 Fehlernummer (Error Number):10061,Status (State):0,Klasse (Class):20
SqlError: 'Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server. Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden. Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt. (provider: TCP Provider, error: 0 - Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte.)' Source: '.Net SqlClient Data Provider' Number: 10061 State: 0 Class: 20 Procedure: '' LineNumber: 0 Server: ''
Unknown SQL Exception 10061 occurred. Additional error information from SQL Server is included below. Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server. Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden. Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt. (provider: TCP Provider, error: 0 - Es konnte keine Verbindung hergestellt werden, da der Zielcomputer die Verbindung verweigerte.)
Fix
Firewall und Verbindung prüfen
Falls eine Firewall im Netz eingesetzt wird, so sollte man die Logs der Firewall auf Sperrungen des verwendeten Ports überprüfen.
In unserem Fall gab es eine Meldung über gesperrte Verbindung.
In diesem Fall konnten sich die SharePoint-WFEs nicht mit der SQL-Instanz des in den SharePoint integrierten SSRS verbinden (SSRS-Dienstanwendungsdatenbanken lagen in diesem Fall nicht auf der gleichen SP-Instanz). Nach dem freischalten der Firewall, sind die Meldungen im ULS-Log auch verschwunden.
SQL-Alias überprüfen
Falls ein SQL-Alias für die Verbindung benutzt wird, muss überprüft werden, ob auf dem Rechner das benötigte Alias vorhanden ist.
Beispiel: Auf dem Rechner „Computer01“ wird der Report Builder geöffnet und zeigt einen der oben beschriebenen Fehler. Dann muss man auf dem „Computer01“ das evtl. in der Verbindungsdatei oder im Bericht verwendete SQL-Alias kontrollieren und ggf. mit dem Programm cliconfg.exe
eintragen.
Falls die Benutzung des SQL-Aliases nicht erwünscht ist, so kann der Server in manchen Fällen auch direkt folgendermaßen angesprochen werden (z.B. in einer Verbindungsdatei):
Data Source=my-db-srv.domain.de,1234; Initial Catalog=db_name
oder mit dem Instanznamen:
Data Source=my-db-srv.domain.de\instance_name; Initial Catalog=db_name