Zu Zwecken der Problembehandlung möchte ich überprüfen können, ob ein Client eine Verbindung zu einer SQL Server-Instanz herstellen kann, unabhängig von der Anwendung, die möglicherweise keine Verbindung zum SQL Server herstellen kann.
Gibt es eine einfache Möglichkeit (das heißt, Sie müssen keine Software von Drittanbietern installieren), um dies mit den Standard-Windows-Systemtools durchzuführen? Vielleicht mit Skripten oder Netzwerkanwendungen?
sql-server
scripting
MicSim
quelle
quelle
Antworten:
Wenn der Server TCP / IP verwendet, besteht die einfache Möglichkeit darin, eine Telnet-Verbindung zum SQL Server-Port herzustellen und zu überprüfen, ob eine Verbindung besteht. Standardmäßig ist das Port 1433, daher sollte dies funktionieren:
Das wird wahrscheinlich in den meisten Fällen angemessen sein.
Wenn ein anderer Port oder dynamische Ports (gemeinsam mit einer benannten Instanz) verwendet werden, müssen Sie ermitteln, welchen Port sie derzeit überwachen. Überprüfen Sie den SQL Server-Konfigurationsmanager, um festzustellen, ob es sich um einen bestimmten Port oder um dynamische Ports handelt. Wenn dynamische Ports verwendet werden,
netstat -abn
ist dies wahrscheinlich der einfachste Weg, um die verwendeten Instanzen zu ermitteln, sofern nicht mehrere Instanzen auf dem Server vorhanden sind . Anderenfalls durchsuchen Sie das Windows-Ereignisprotokoll oder das SQL Server-Fehlerprotokoll nach einer Meldung, die angibt, welcher Port von der Instanz verwendet wird.Wenn SQL Server Named Pipes verwendet, verfügen Sie meines Erachtens über eine ausreichende Netzwerkkonnektivität , wenn Sie auf Freigaben auf dem Computer zugreifen können. In diesem Artikel heißt es, dass Sie noch weiter gehen und versuchen können, eine Verbindung zur IPC $ -Freigabe herzustellen:
http://msdn.microsoft.com/en-us/library/aa275787%28v=sql.80%29.aspx
Das ist für SQL Server 2000 geschrieben, aber ich kann mir nicht vorstellen, dass sich an diesem Aspekt viel geändert hat, wenn überhaupt.
quelle
Eine einfache Testmethode für die SQL-Konnektivität besteht darin, eine leere Textdatei mit der Dateierweiterung "UDL" zu erstellen. Sie können es im Editor erstellen. Und es kann einen beliebigen Namen haben. Ich benutze "TestSQL.UDL"
Speichern Sie es auf dem Desktop eines Windows-PCs und doppelklicken Sie darauf.
Ein Dialogfeld "Datenverknüpfungseigenschaften" wird geöffnet, in dem Sie die IP-Adresse des SQL-Servers sowie einen SQL-Benutzernamen und ein Kennwort eingeben können.
Klicken Sie auf die Schaltfläche "Verbindung testen", um festzustellen, ob Sie eine Verbindung herstellen können.
quelle
Vorausgesetzt, Sie haben die
Microsoft.SqlServer.Smo
Assembly in Ihrem GAC auf dem lokalen Computer, ist dies mit PowerShell problemlos möglich:quelle