这个问题在这里已经有答案了:
将java连接到mysql数据库(14个答案)
两年前关门了。
我对liquibase还比较陌生,我试着在自己的电脑上安装它,用本地mysql服务器运行windows7。我已经安装了jdbc驱动程序(4.2),在防火墙和服务器上打开了tcp/ip端口3306,安装了liquibase,并将其作为路径添加到环境变量中。
作为第一个命令,我尝试使用以下命令:
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:到主机localhost端口3306的tcp/ip连接失败。错误:“连接被拒绝:连接。验证连接属性。请确保sql server示例正在主机上运行,并在端口处接受tcp/ip连接。确保到端口的tcp连接未被防火墙阻止。“。
服务器肯定在运行,因为我可以用telnet、mysqlworkbench和其他一些工具连接到它。
使用运行命令时 --url="jdbc:sqlserver:localhost:3306; databaseName=Test"
,我得到一个不同的错误代码。
运行liquibase时出现意外错误:liquibase.exception.databaseexception:无法创建到的连接jdbc:sqlserver:localhost:3306; databasename=test with driver com.microsoft.sqlserver.jdbc.sqlserverdriver。可能是给定数据库url的错误驱动程序
我在另一台装有SQLServer2017、不同的jdbc驱动程序(6.0和6.2)和Windows10操作系统的计算机上再次尝试了这一点。停用防火墙没有任何作用,也没有一个干净的安装一切。
感谢您的帮助。
1条答案
按热度按时间cwtwac6a1#
mysql与microsoftsqlserver是不同的产品。如果您说过可以使用mysql workbench进行连接,那么这可能就是您安装的产品。
与其尝试连接到不存在的microsoftsql服务器,不如尝试使用mysql驱动程序。