2009-06-25 9 views
0

Ich habe ein Skript, das mit SQL Server 2005 benannte Instanz mithilfe von osql verbindet. Aber das Skript führt die folgenden Fehler:Problem beim Verbinden mit SQL Server 2005 benannte Instanz

[SQL Native Client]Named Pipes Provider: Could not open a connection to SQL Server [53]. 
[SQL Native Client]Login timeout expired 
[SQL Native Client]An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. 

Das Verbindungsteil des Skripts ist unten gezeigt:

osql -E -S <servername>\<named_instance> -i D:\scripts\script1.sql -o D:\scripts\script1.txt 

Meine Frage ist: Was diesen Fehler verursacht, und was ist die mögliche Auflösung?

Antwort

1

Der Parameter -S gibt die Instanz an. Ihr Beispiel zeigt '\'. Sie müssen es so etwas wie ändern:

osql -E -S localhost\myInstance -i D:\scripts\script1.sql -o D:\scripts\script1.txt 

http://msdn.microsoft.com/en-us/library/aa214012(SQL.80).aspx

Sie müssen die Konfigurationen Client und Server zu überprüfen, kann auch auf den Transport (Shared Memory, Named Pipes, TCP/IP) zustimmen usw.

+0

Bitte beachten Sie die bearbeitete Version. Es sieht so aus, als hätte ich vergessen, auf das Codesymbol zu klicken, damit der Code so aussieht, wie er sollte. – titanium

+0

Ich habe die mögliche Ursache bereits gefunden. Ich schaute auf den SQL Server-Konfigurationsmanager. Der benannte Instanzservice wurde gestoppt. Vielleicht hat jemand in unserem Team das absichtlich gestoppt, obwohl es nicht das richtige Ticket oder nur eine Nachricht per E-Mail erhalten hat. – titanium

0

Stellen Sie sicher, dass SQL Server Remoteverbindungen erlaubt und TCP/IP- und Named Pipes-Verbindungen aktiviert sind.

+0

Ich habe bereits TCP/IP und Named Pipes überprüft, beide sind aktiviert. Remoteverbindungen sind ebenfalls aktiviert. – titanium

Verwandte Themen