首页 > 解决方案 > 有没有办法在 AS400 上使用 Flyway?

问题描述

我需要实现像 Flyway 这样的迁移工具,以便使用 Jenkins 来部署数据库更改。我尝试添加 jt400.jar 文件并添加配置如下:

flyway.url=jdbc:as400://192.168.171.251:446/DBDEV
flyway.driver=com.ibm.as400.access.AS400JDBCDriver

作为驱动程序,它不会与此消息连接:

ERROR: No database found to handle jdbc:as400://192.168.171.251:446/DBDEV

我还尝试使用 IBM DB2 驱动程序并进行了配置

flyway.url=jdbc:db2://192.168.171.251:50000/DBDEV
flyway.driver=com.ibm.db2.jcc.DB2Driver

这次我收到这种拒绝信息

ERROR: 
Unable to obtain connection from database (jdbc:db2://192.168.171.251:50000/DBDEV) for user 'DEVUSER': 
[jcc][t4][2043][11550][4.26.14] Exception java.net.ConnectException: Error opening socket to server
 /192.168.171.251 on port 50,000 with message: Connection refused (Connection refused). 
ERRORCODE=-4499, SQLSTATE=08001

通过这个测试迁移,我试图通过执行这个 sql 创建一个简单的表

CREATE TABLE PERSON (
    ID INT NOT NULL,
    NAME VARCHAR(100) NOT NULL
);

有人遇到过这种情况并解决了吗?

标签: db2ibm-midrangeflyway

解决方案


您确定DBDEV是 IBM i 上的 Db2 数据库的名称吗?

使用绿屏中的使用 RDB 目录条目 (WRKRDBDIRE),并查找 *LOCAL 条目。

或者使用 Access Client Solutions (ACS)“Schemas”工具查看系统上的 DB 列表。 在此处输入图像描述

上面显示了 2 个 DB,UT29p63并且Dbtest


推荐阅读