web-dev-qa-db-fra.com

comment se connecter à SQL Server avec SQuirreL SQL depuis une machine Linux non enregistrée dans un domaine?

Je dois me connecter à un serveur SQL 2008 R2 à partir de ma machine Linux non enregistrée dans le domaine de mon entreprise. J'essaie d'utiliser SQuirreL SQL version 3.2.1 . J'ai téléchargé Pilote JDBC Microsoft SQL Server 3.0 et je l'ai attribué à SQuirreL dans l'onglet Pilotes.

Maintenant, lorsque j'essaie de créer un alias sur SQuirreL, je sélectionne le pilote SQL Server et ajuste l'URL. Pour les informations d'identification, j'utilise le nom d'utilisateur et le mot de passe enregistrés pour mon domaine.

Lorsque j'essaie de tester la connexion, j'obtiens toujours la même erreur:

<"nom-base-de-données">:: échec d'ouverture de session pour l'utilisateur '<"domaine">\<"utilisateur_domaine">'.

Comment puis-je obtenir ce travail? Merci d'avance!

26
gtludwig

Je me suis débarrassé du pilote JDBC de Microsoft SQL Server et téléchargé jTDS driver. J'ai modifié un peu avec elle jusqu'à ce que j'ai enfin une connexion réussie. La chaîne de connexion correcte était:

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

La réponse peut être obsolète car j'avais le même problème avec SQuirrel SQL sous MacOS 10.9.3 et non sous Linux La façon dont Peter a résolu le problème m'a inspiré. Comme la solution n’était pas très simple, j’ai décidé de la mettre ici. J'espère que ça aide quelqu'un.

  1. Téléchargez le dernier pilote Microsoft JDBC 4.0 pour SQL Server (package tar.gz)
  2. Extraire uniquement sqljdbc4.jar du package
  3. Copiez le fichier jar dans SQL Squirrel (Contenu-> Ressources-> Java-> Lib)
  4. Le pilote JDBC Microsoft MSSQL Server est maintenant disponible pour créer un alias.
  5. URL de connexion: jdbc: sqlserver: // SERVERNAME; databaseName = DATABASENAME
19
krebalo

Une autre solution qui a fonctionné pour moi. Sur un bureau Windows se connectant à SQL Server 2008 R2, j'ai dû suivre ces étapes:

  • copier le jtds-1.3.1.jar dans le répertoire SQuirrel SQL\lib
  • redémarrez SQuirrel SQL et vérifiez que vous voyez jTDS Microsoft SQL dans la liste des pilotes
  • assurez-vous que dans la configuration du pilote, le nom de la classe spécifie net.sourceforge.jtds.jdbc.Driver
  • utiliser une chaîne de connexion comme celle-ci

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

7
ManuelJE

J'ai réussi à me connecter à un serveur SQL Server à partir de SQuirrel sur une boîte Linux. Rudes * étapes ...

  • Vous n'avez besoin que de l'un des fichiers jdbc du téléchargement MS (copié dans «lib»).
  • Doit utiliser l'authentification SQL Server (pas l'authentification réseau Windows)
  • L'authentification SQL Server était déjà activée sur notre base de données
  • Ajout d'un identifiant 'jdoe'
  • Définissez la base de données par défaut de jdoe sur 'XxxDb'
  • Ajout d'un 'mappage utilisateur' de jdoe à la base de données souhaitée
  • Configurez les autorisations sur SQL Server pour jdoe: 'Connect' et 'View any database'
  • Chaîne de connexion: jdbc: sqlserver: // SERVERNAME: 1433; databaseName = XxxDb

* Peut ne pas avoir besoin de tout quand je fouille

3
Peter L

Assurez-vous que le pilote Microsoft jdbc est compatible avec votre version d’exécution Java que vous utilisez,

J'essayais d'utiliser Driver 6.0 avec Java-9 et j'ai eu l'erreur suivante:.

0
technotux