无法获得数据源的JDBC连接 - 迁飞

问题描述:

我有一个MariaDB的数据库运行的泊坞窗容器数据库可用上:127.0.0.1:3306并没有应用程序连接到数据库与给定的凭据任何问题。无法获得数据源的JDBC连接 - 迁飞

MySQL工作台(无问题),DataGrip(无问题),工匠(无问题),IDEA IDE数据库视图(无问题),手动连接(没有问题)。本地主机上的默认端口上没有可用的所有服务问题,所有其他应用程序都可以正常连接到它们。

然而flyway会抛出:

Flyway 4.1.1 by Boxfuse 

ERROR: 
Unable to obtain Jdbc connection from DataSource (jdbc:mysql://127.0.0.1:3306/local_db_emp) for user 'local_user_emp': Could not connect to 127.0.0.1:3306: unexpected end of stream, read 0 bytes from 4 
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
SQL State : 08 
Error Code : -1 
Message : Could not connect to 127.0.0.1:3306: unexpected end of stream, read 0 bytes from 4 

这就是我如何运行flyway命令:

flyway \ 
    -driver=org.mariadb.jdbc.Driver \ 
    -url=jdbc:mariadb://127.0.0.1:3306/local_db_emp \ 
    -user=local_user_emp \ 
    -password=local_pass_emp \ 
    -locations=filesystem:/src/main/resources/migrations \ 
    -sqlMigrationPrefix= \ 
    migrate 

我也曾尝试:
- 使用localhost,而不是127.0.0.1
- 使用jdbc:mysql
- 使用MySQL驱动[R
- 使用泊坞窗容器名称dev_database,而不是127.0.0.1 || localhost

尝试Ping通,服务和没有可用的问题随处只是没有用`flywayz。

+0

证实,'org.mariadb.jdbc.Driver'工作为JDBC驱动程序*和*是从classpath中正在使用的驱动程序? – markdsievers

+0

如果您指向非侦听端口,您可以运行快速实验并让我们知道结果。你会得到相同的错误对话框吗? – markdsievers

+0

@markdsievers对不起,我一直缺席。运行lsof将显示数据库服务正在侦听连接。试图使用任何其他应用程序/ lib工作连接到服务没有任何问题。我所做的是CLI而不是CLI我使用了Flyway java lib,它没有任何问题。 –

我有一个类似的问题,实现作出了对飞行用config文件夹错误..

请确保您连接的数据库名称已经被注释去掉,才可以添加本地网址..the DOC自带如此评论我忘记取消注释,并且阻止了flyway与我的SQL数据库连接或识别它。

flyway.url = jdbc:jtds:sqlserver:// localhost 为了使用位置,您必须确保其未被评论。

见例如波纹管

“#” flyway.user =粉红

flyway.user =粉红色

我必须做同样的事情JDBC连接和密码。

希望这会有所帮助。

+0

我直接调用命令没有配置文件,但我还没有尝试配置文件的方式,仍然同样的问题,我查了性能的5倍。 –

+0

很抱歉听到这个消息。你碰巧遇到了错误..或者你在控制台上看到的东西。 – NelsonRoberts

我还使用PowerShell中可能会有所作为。