ich habe folgendes Problem, ich muß eine Verbindung zu einer Datenbank auf einem mssql-Server 2000 herstellen. Zum einen wollte ich wissen ob der jdbc-Treiber für einen mssql-server 2005 abwärtskompatibel zum 2000-er ist, und zum anderen bekomme ich bei der Nutzung des 2005er Treiber folgende Meldung : “Connection refused : connect” und bei der Verwendung des 2000er Treibers bekomme ich folgende Meldung : " [Microsoft][SQLServer 2000 Driver for JDBC]Fehler beim einrichten eines Sockets. " , kann mich da mal jemand aufklären, was welche Meldung für eine Ursache hat und wie ich dies beheben kann. Zum gleich Server und gleicher Datenbank klappt die Verbindung per jdbc-odbc-Bridge.
ich tippe bei der Fehlermeldung “Connection refused” darauf das da ne Firewall oder so dazwischen hängt
probiere das mal aus (windows)
Start -> Ausführen -> cmd
telnet
wenn die Verbindung entgegengenommen wird also der Bildschirn schwarz wird liegts wohl am Treiber bzw dem Connectionstring
sonst läuft der Server nicht oder du hast den falschen Port oder irgendwas anderes stimmt nicht
Also , zu der Datenbank, wohin ich mich verbinden möchte , da läuft das ganze als Instanz und ich bekomme per Telnet “Verbindung fehlgeschlagen”, auf einem anderen MSSQL-Server wo das ganze ohne Instanz läuft kann ich mich verbinden und per Telnet bekomme ich gar keine Rückmeldung.
Ich habe nun versucht mich mit diesem String zu verbinden (zum Server mit der Instanz) :
url = “jdbc:sqlserver://:;instanceName=;integratedSecurity=true;databaseName=;”;
aber dies ist auch fehlgeschlagen.
Wie würde deiner Meinung nach solch ein String zu einer Instanz aussehen?
Naja, wie gesagt, es läuft eine Instanz drauf, Admin sagt, eine Firewall läuft nicht , von daher wollte ich mal wissen wie bei einer Instanz der ConnectString aussehen müßte. ich habe mit “mssqlserverGer.jar” und “mssqlserverg.jar” versucht.
wenn du per telnet dich nicht verbinden kannst dann liegt es nicht an deinem Connectionstring sondern zu 99% an dem Rechner aufdem es läuft (alternativ spinnt die Verbindung dazwischen oder lokal ist etwas)
kann es vielleicht auch sein das der Server nicht auf TCP Verbindungen wartet?
Es handelt sich um eine mssql2005 datenbank.
Wenn ich den rechner frisch hochgefahren habe, komme ich mit dem jdbc-treiber für mssqlserver2005 nicht an die Datenbank ran , folgende Meldung :
“Dieser Treiber ist nicht für integrierte Authentifizierung konfiguriert.”
Dann nehme ich den jdbc-treiber für mssqlserver2000 , wo dann alles klappt.
Wechsel ich nun wieder auf den jdbc-treiber für mssqlserver2005 , funktioniert dieser nun auch.
Ich kann dir nicht erklären, warum der erste Versuch nicht klappt, aber ich könnte mir vorstellen, dass es beim 2. mal klappt weil der Socket (Zuordnung IP<–>Port) bereits existiert