Using windows-authentication with SQL Server on x64 OS

I'm trying to setup TC to connect SQL Serever (2008R2SP2) with Windows (integegrated) authentication as described here:
TC is installed on Windows Server 2008R2 (x64) so I installed JDK x64 (1.7.25).
I install jdk driver and put appropriate sqljdbc_auth.dll into winodws/system32 as described in the docs.
I create a DB and .properties file with connection string (connectionUrl=jdbc:sqlserver://localhost:1433;databaseName=TeamCity;integratedSecurity=true).
I have succesfully migrated all data from internal DB to SQL DB with help of bin\maintainDB.cmd script.
But when I start TC (as Windows Service) I get the following error:
SQL error when doing: Connecting to MSSQL: This driver is not configured for integrated authentication.

What's wrong?

I have the only guess that TC internally uses x86 JRE which isn't compatible with installed sqljdbc_auth.dll. But if so then how do you suppose it should work on x64 Windows ?

Comment actions Permalink

Hello Shike,
sorry for the delay - we missed this message.

If this is still actual, just check that TC uses 64-bit JDK. In order to do it, you can check the teamcity-server.log (text related to TeamCity server startup).

See here:
how to change the JDK that is used by TeamCity.

Best regards,

Leonid Bushuev

Comment actions Permalink

Thank you!  It's now working.

I had installed 64-bit Java is in: "C:\Program Files\Java\jre7" and restarted TeamCity but I didn't realize that TeamCity was ignoring that and using the 32-bit Java in "teamcity\jre" .  I solved it by doing:

  • shut down TeamCity
  • rename  "teamcity\jre"  to  "teamcity\jre-orig"
  • copy "C:\Program Files\Java\jre7"  to  "teamcity\jre"
  • restart TeamCity

Please consider adding a notation to as well as your Troubleshooting page to mention this issue.

Please sign in to leave a comment.