尝试使用 JDBC 连接到 IBM 的 Informix docker 版本
Trying to connect to IBM's Informix docker edition with JDBC
我正在尝试为 Informix 编写一些 Java 测试。我从这里得到 docker 运行ning:
https://hub.docker.com/r/ibmcom/informix-developer-database/
我找不到用于连接它的 JDBC 连接字符串的任何示例。
我用它来 运行 它:docker 运行 -it --name ifx -h ifx --privileged -p 9089088 -p 9089:9089 -p 27017:27017 -p 27018:27018 -p 27883:27883 -e LICENSE=accept ibmcom/informix-developer-database:latest
我正在使用默认用户名和密码尝试 jdbc:informix-sqli://localhost:9088/sysmaster:INFORMIXSERVER=ifx,但我收到“INFORMIXSERVER 与 DBSERVERNAME 或 DBSERVERALIASES 都不匹配。 “
我也尝试使用 INFORMIXSERVER=dev - 同样的错误。
有人知道 jdbc url 对这张 docker 图片来说是什么吗?
您可以使用以下 JDBC URL 字符串:
jdbc:informix-sqli://localhost:9088/sysmaster:INFORMIXSERVER=informix
您可以检查 INFORMIXSERVER
参数使用的正确值,如下所示:
- 按如下方式连接到您的 Docker 实例:
docker exec -it ifx bash
- 在命令行中,检查
sqlhosts
文件的内容:
cat $INFORMIXDIR/etc/sqlhosts
你会看到类似的东西(假设是普通 Docker 安装):
############################################################
### DO NOT MODIFY THIS COMMENT SECTION
### HOST NAME = 6b4943a932ab
############################################################
informix onsoctcp *6b4943a932ab 9088
informix_dr drsoctcp *6b4943a932ab 9089
端口 9088 的条目名称为 informix
。
INFORMIXSERVER=informix
不是必需的,除非您尝试使用 JDBC 从 SQLHOST 文件中查找内容。只要您有 host:post,就可以完全省略 INFORMIXSERVER 并使用 4.10.JC6 或更高版本的 JDBC 驱动程序。
这样就省去了知道每个 Informix 服务器名称的麻烦
我正在尝试为 Informix 编写一些 Java 测试。我从这里得到 docker 运行ning:
https://hub.docker.com/r/ibmcom/informix-developer-database/
我找不到用于连接它的 JDBC 连接字符串的任何示例。
我用它来 运行 它:docker 运行 -it --name ifx -h ifx --privileged -p 9089088 -p 9089:9089 -p 27017:27017 -p 27018:27018 -p 27883:27883 -e LICENSE=accept ibmcom/informix-developer-database:latest
我正在使用默认用户名和密码尝试 jdbc:informix-sqli://localhost:9088/sysmaster:INFORMIXSERVER=ifx,但我收到“INFORMIXSERVER 与 DBSERVERNAME 或 DBSERVERALIASES 都不匹配。 “
我也尝试使用 INFORMIXSERVER=dev - 同样的错误。
有人知道 jdbc url 对这张 docker 图片来说是什么吗?
您可以使用以下 JDBC URL 字符串:
jdbc:informix-sqli://localhost:9088/sysmaster:INFORMIXSERVER=informix
您可以检查 INFORMIXSERVER
参数使用的正确值,如下所示:
- 按如下方式连接到您的 Docker 实例:
docker exec -it ifx bash
- 在命令行中,检查
sqlhosts
文件的内容:
cat $INFORMIXDIR/etc/sqlhosts
你会看到类似的东西(假设是普通 Docker 安装):
############################################################
### DO NOT MODIFY THIS COMMENT SECTION
### HOST NAME = 6b4943a932ab
############################################################
informix onsoctcp *6b4943a932ab 9088
informix_dr drsoctcp *6b4943a932ab 9089
端口 9088 的条目名称为 informix
。
INFORMIXSERVER=informix
不是必需的,除非您尝试使用 JDBC 从 SQLHOST 文件中查找内容。只要您有 host:post,就可以完全省略 INFORMIXSERVER 并使用 4.10.JC6 或更高版本的 JDBC 驱动程序。
这样就省去了知道每个 Informix 服务器名称的麻烦