我已经安装了freetds,当我尝试通过主机连接时,它看起来工作正常:
tsql -H myhost -U myuser -P mypass -p 1433
locale is "C/UTF-8/C/C/C/C"
locale charset is "UTF-8"
using default charset "UTF-8"
1>
我已经配置了freetds.conf:
[azure]
host = myhost
port = 1433
tds version = 7.0
但是当我尝试通过服务器名称(azure)进行连接时,它会失败:
tsql -S azure -U myuser -P mypass
locale is "C/UTF-8/C/C/C/C"
locale charset is "UTF-8"
using default charset "UTF-8"
Msg 40532 (severity 20, state 1) from azure:
"Cannot open server "azure" requested by the login. The login failed."
Error 20002 (severity 9):
Adaptive Server connection failed
尝试使用macos和debian。
答案 0 :(得分:7)
答案很简单,但很奇怪。当您通过配置文件(-S)连接时,您应该使用username @ host作为登录名,而不仅仅是用户名。这很奇怪,但是当您通过主机(-H)连接时,您只能使用用户名(但也可以使用username @ host)。
答案 1 :(得分:1)
很高兴为你效劳。查看此文档 - http://www.freetds.org/userguide/odbcconnattr.htm
作为一般惯例,我们建议您使用-S
如果您还有其他问题,请与我们联系。