This question already has answers here:
Connect Java to a MySQL database
                                
                                    (13个回答)
                                
                        
                                2年前关闭。
            
                    
我对liquibase相当陌生,并尝试在自己的计算机上进行安装,并使用本地MySQL Server运行Windows 7。我已经安装了JDBC驱动程序(4.2),在防火墙和服务器上打开了TCP / IP端口3306,安装了liquibase并将其作为PATH添加到环境变量中。

作为第一个命令,我尝试使用此命令:

C:\Users\Marius>H:\Liquibase\Liquibase \
--driver=com.microsoft.sqlserver.jdbc.SQLServerDriver \
--classpath="C:\\Program Files\\Microsoft JDBC Driver 6.2 for SQL Server\\sqljdbc_6.2\\enu\\mssql-jdbc-6.2.2.jre7.jar" \
--url="jdbc:sqlserver://localhost:3306; databaseName=Test" \
--changeLogFile="H:\Liquibase\dbchangelog.xml" \
--username=liquibase \
--password=liquibase \
Update


但是执行时,我只会得到:


  运行Liquibase发生意外错误:
  com.microsoft.sqlserver.jdbc.SQLServerException:TCP / IP连接
  到主机localhost,端口3306失败。错误:“连接
  拒绝:连接。验证连接属性。确保
  SQL Server实例在主机上运行并接受TCP / IP
  端口上的连接。确保与端口的TCP连接
  没有被防火墙阻止。”。


该服务器肯定正在运行,因为我能够使用telnet,mySQLWorkbench和其他几个工具连接到该服务器。

使用--url="jdbc:sqlserver:localhost:3306; databaseName=Test"运行命令时,出现了不同的错误代码。


  运行Liquibase发生意外错误:
  liquibase.exception.DatabaseException:无法创建连接
  到jdbc:sqlserver:localhost:3306; databaseName =使用驱动程序进行测试
  com.microsoft.sqlserver.jdbc.SQLServerDriver。可能是错误的
  给定数据库URL的驱动程序


我在另一台装有SQL Server 2017,不同的JDBC驱动程序(6.0和6.2)以及Windows 10作为操作系统的计算机上再次尝试了此操作。
停用防火墙不会执行任何操作,也不会清除所有内容。

任何帮助表示赞赏。

最佳答案

MySQL是与Microsoft SQL Server不同的产品。假设您已经说过可以使用MySQL工作台进行连接,则可能是您已安装的产品。

与其尝试连接到不存在的Microsoft SQL Server,不如尝试使用MySQL驱动程序。

关于mysql - Liquibase无法连接到SQL Server ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48178646/

10-08 22:27
查看更多