我正在尝试使用unixODBC和FreeTDS从我的Mac连接到SQL Server 2005数据库,如我在此处所述.但是,当我尝试使用相同的设置连接到不同的数据库时,我得到:
Connection Failed:[FreeTDS][SQL Server]Unable to connect: Adaptive Server is unavailable or does not exist.
Run Code Online (Sandbox Code Playgroud)
这是我的freetds.conf设置:
[my_db]
host = 12.34.56.789
port = 1433
tds version = 8.0
Run Code Online (Sandbox Code Playgroud)
这是我的odbc.ini:
[my_dsn]
Driver = /opt/local/lib/libtdsodbc.so
Description = My Database
Trace = no
Servername = my_db
Database = MyDB
[ODBC Data Sources]
my_dsn = FreeTDS
Run Code Online (Sandbox Code Playgroud)
我仍然可以连接到我在这台计算机上设置的其他数据库(在我上面链接的博客文章中描述),所以我很确定错误不在Mac端.我已在服务器上验证我正在使用正确的IP地址和端口.关于什么可能是问题的任何想法,以及它是否在服务器端?
它有点像"鸡或鸡蛋"类型的查询,但有人可以梦想一个可以返回查询执行的当前数据库实例的名称的查询吗?相信我,当我说我明白悖论:如果你已经连接执行查询,为什么你需要知道数据库实例的名称?在多数据库环境中进行审计.
我查看了联机丛书中的所有@@ globals." SELECT @@servername"接近,但我想要数据库实例的名称而不是服务器.
我安装了 SQL Server,但忘记了服务器名称,现在我安装了 SQL Server Management Studio,它需要服务器名称。
如何再次获取服务器名称?
sql-server ×3
database ×1
freetds ×1
php ×1
server-name ×1
sql ×1
ssms ×1
t-sql ×1
unixodbc ×1