it-swarm.com.de

wie stellt man eine Verbindung zu SQL Server mit SQuirreL SQL von einer nicht registrierten Linux-Box her her?

Ich muss von meiner Linux-Box aus, die nicht in der Domäne meines Unternehmens registriert ist, eine Verbindung zu einem SQL 2008 R2-Server herstellen. Ich versuche, SQuirreL SQL Version 3.2.1 zu verwenden ... Ich habe Microsoft SQL Server JDBC Driver 3.0 heruntergeladen und SQuirreL auf der Registerkarte Treiber zugewiesen.

Wenn ich jetzt versuche, einen Alias ​​unter SQuirreL zu erstellen, wähle ich den SQL Server-Treiber aus und passe die URL an. Für Anmeldeinformationen verwende ich meinen registrierten Benutzernamen und mein Passwort.

Wenn ich versuche, die Verbindung zu testen, erhalte ich immer die gleiche Fehlermeldung:

<"Datenbankname">: Anmeldefehler für Benutzer "<" Domäne ">\<" Domänenbenutzer ">".

Wie kann ich das zum Laufen bringen? Danke im Voraus!

26
gtludwig

Ich habe den Microsoft SQL Server JDBC-Treiber entfernt und jTDS driver heruntergeladen. Ich habe ein bisschen daran angepasst, bis ich endlich eine erfolgreiche Verbindung hatte. Die richtige Verbindungszeichenfolge war:

jdbc:jtds:sqlserver://<server_ip>:1433;databaseName=<instance_name>;domain=<domain_name>
27
gtludwig

Die Antwort kann veraltet sein, da ich ein ähnliches Problem mit SQuirrel SQL unter MacOS 10.9.3 nicht unter Linux hatte. Die Art und Weise, wie Peter das Problem gelöst hat, hat mich inspiriert. Da die Lösung nicht unkompliziert war, entschied ich mich, sie hier zu platzieren. Hoffe es hilft jemandem.

  1. Laden Sie den neuesten Microsoft JDBC-Treiber 4.0 für SQL Server herunter (tar.gz-Paket).
  2. Extrahieren Sie nur die Datei sqljdbc4.jar aus dem Paket
  3. Kopieren Sie die JAR-Datei in Squirrel SQL (Contents-> Resources-> Java-> Lib)
  4. Jetzt ist der Microsoft MSSQL Server JDBC-Treiber zum Erstellen von Alias ​​verfügbar
  5. Verbindungs-URL: jdbc: sqlserver: // SERVERNAME; databaseName = DATABASENAME
19
krebalo

Eine andere Lösung, die für mich funktioniert hat. Auf einem Windows-Desktop, der eine Verbindung zu SQL Server 2008 R2 herstellt, musste ich folgende Schritte ausführen:

  • kopieren Sie die Datei jtds-1.3.1.jar in das Verzeichnis SQuirrel SQL\lib
  • starten Sie SQuirrel SQL neu und überprüfen Sie, ob in der Treiberliste jTDS Microsoft SQL angezeigt wird
  • stellen Sie sicher, dass in der Treiberkonfiguration der Klassenname net.sourceforge.jtds.jdbc.Driver angibt.
  • verwenden Sie eine Verbindungszeichenfolge wie diese

jdbc:jtds:sqlserver://<hostnameOrIp>:<port>/<databaseName>;instance=<instanceName>

7
ManuelJE

Es gelang mir, eine Verbindung zu einem SQL Server von SQuirrel in einer Linux-Box herzustellen. Grobe * Schritte ...

  • Sie benötigen nur eine der jdbc-Dosen aus dem MS-Download (in "lib" kopiert)
  • Muss SQL Server-Authentifizierung verwenden (nicht Windows-Netzwerkauthentifizierung)
  • SQL Server-Authentifizierung war auf unserer Datenbank bereits aktiviert
  • Login 'jdoe' hinzugefügt
  • Jdoe-Standarddatenbank auf 'XxxDb' setzen
  • Fügte ein 'User Mapping' von jdoe zur gewünschten Datenbank hinzu
  • Richten Sie die Berechtigung für jdoe auf dem SQL Server ein: 'Connect' und 'View any database'
  • Verbindungszeichenfolge: jdbc: sqlserver: // SERVERNAME: 1433; databaseName = XxxDb

* Möglicherweise nicht alles, während ich herum stöbere

3
Peter L

Stellen Sie sicher, dass der Microsoft-JDBC-Treiber mit Ihrer verwendeten Java-Laufzeitversion kompatibel ist.

Ich habe versucht, Driver 6.0 mit Java-9 zu verwenden, und ich habe folgende Fehlermeldung erhalten: ClassNotFoundException: javax.xml.bind.DatatypeConverter.

0
technotux