Home » Linux » how to connect to SQL Server with SQuirreL SQL from non domain registered Linux box?

how to connect to SQL Server with SQuirreL SQL from non domain registered Linux box?

Posted by: admin November 30, 2017 Leave a comment

Questions:

I need to connect to a SQL 2008 R2 Server from my Linux box that’s not registered in my company’s domain. I’m trying to use SQuirreL SQL version 3.2.1.
I downloaded Microsoft SQL Server JDBC Driver 3.0 and assigned it to SQuirreL on the Drivers tab.

Now, when I try to create an Alias on SQuirreL, I select the SQL Server driver and adjust the URL. For credentials I use my domain registered username and password.

When I try to test the connection, I always get the same error:

<“database-name”>: Logon failure for user ‘<“domain”>\<“domain-user”>’.

How can I get this working? Thanks in advance!

Answers:

I got rid of Microsoft SQL Server JDBC Driver and downloaded jTDS driver. I tweaked a bit with it until I finally got a successful connection. The correct connection string was:

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

Questions:
Answers:

The answer may be obsolete as I had the similar problem with SQuirrel SQL on MacOS 10.9.3 not on Linux box. The way Peter solved the problem inspired me. As the solution was not most straightforward I decided to put it here. Hope it helps someone.

  1. Download latest Microsoft JDBC Driver 4.0 for SQL Server (tar.gz package)
  2. Extract only sqljdbc4.jar from the package
  3. Copy the jar file into Squirrel SQL (Contents->Resources->Java->Lib)
  4. Now Microsoft MSSQL Server JDBC Driver is available to create Alias
  5. Connection URL: jdbc:sqlserver://SERVERNAME;databaseName=DATABASENAME
Questions:
Answers:

Another solution that worked for me. On a Windows desktop connecting to SQL Server 2008 R2, I had to follow these steps:

  • copy the jtds-1.3.1.jar into the SQuirrel SQL \lib directory
  • restart SQuirrel SQL and check that you see jTDS Microsoft SQL in the drivers list
  • make sure that in the driver configuration the Class Name specifies net.sourceforge.jtds.jdbc.Driver
  • use a connection string like this

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

Questions:
Answers:

I managed to connect to an SQL Server from SQuirrel on a linux box. Rough* steps …

  • You only need one of the jdbc jars from the MS download (copied to ‘lib’)
  • Must use SQL Server auth (not windows network auth)
  • SQL Server auth was already enabled on our db
  • Added a login ‘jdoe’
  • Set jdoe default database to ‘XxxDb’
  • Added a ‘User Mapping’ from jdoe to the desired database
  • Set up permission on the SQL Server for jdoe: ‘Connect’ and ‘View any database’
  • Connection string: jdbc:sqlserver://SERVERNAME:1433;databaseName=XxxDb

* May not need all as I poking around

Leave a Reply

Your email address will not be published. Required fields are marked *