在远程计算机上运行SQL Server 2012 Express,尝试启动并运行Flyway。我在pcesqldev.pce.local
上有一个名为Hawk
的数据库(dbo.Hawk
,如果这很重要),我想要连接到该数据库,配置文件中的模板如下所示:
SQL Server : jdbc:jtds:sqlserver://<host>:<port>/<database>
请注意,这与我与其他产品一起使用的其他jdbc连接字符串不同 - 其中大部分都不包含jtds部分,并且包含实例名称。
这是我尝试过的几个连接字符串,所有连接字符串都失败了:
flyway.url=jdbc:jtds:sqlserver://pcesqldev.pce.local:1433/Hawk
网络错误IOException:连接被拒绝:连接
flyway.url=jdbc:jtds:sqlserver://pcesqldev.pce.local\SQLEXPRESS:1433/Hawk
未知服务器主机名'pcesqldev.pce.local \ SQLEXPRESS'
flyway.url=jdbc:jtds:sqlserver://pcesqldev.pce.local/SQLEXPRESS:1433/Hawk
网络错误IOException:连接被拒绝:连接
flyway.url=jdbc:jtds:sqlserver://pcesqldev.pce.local:1433/SQLEXPRESS\Hawk
网络错误IOException:连接被拒绝:连接
我错过了什么?必须有一些明显的东西,但我看不到它。
在任何人问之前,是的,我们确实启用了对数据库的TCP访问,并使用了端口1433.
答案 0 :(得分:6)
这个让我知道了,关于如何使用实例名称格式化连接字符串的答案并不多。
这对我有用:
flyway.url=jdbc:jtds:sqlserver://<host>:<port>/<database>;instance=<instance_name>
答案 1 :(得分:4)
如果有人遇到问题,正确的连接字符串如下:
flyway.url=jdbc:jtds:sqlserver://SERVER_INSTANCE_NAME:1433/DB_NAME
花了一些时间才意识到这一点,但也许对某人有帮助:)。
答案 2 :(得分:0)
启动服务“ SQL Server代理(SQLEXPRESS)”已解决我的问题
步骤: