使用 PHP Cloud Foundry 应用程序连接到 IBM zOS 系统/DB2 表
Posted
技术标签:
【中文标题】使用 PHP Cloud Foundry 应用程序连接到 IBM zOS 系统/DB2 表【英文标题】:Connecting to IBM zOS system/DB2 table with a PHP Cloud Foundry app 【发布时间】:2018-05-16 14:01:44 【问题描述】:是否可以从 w3ibm.bluemix/php Cloud Foundry 应用程序连接到 bluezone zOS 系统和它的 DB2 表?
我已经连接到 w3ibm.bluemix 上的 DB2 表(使用 db2 服务并在那里有一个表)。它工作正常,但现在我想连接到 zOS 系统。
当我尝试本地连接时,我收到以下错误消息:
由于许可问题,尝试连接到数据库服务器失败。 SQLSTATE=42968 SQLCODE=-1598
我有一个 lincense 文件,但它是 jar 格式 (db2jcc_license_cisuz.jar),我不知道如何将 jar 添加到 php 项目中..
当我尝试从 w3ibm.bluemix(云)连接时 - 我收到此错误 - 使用相同的代码:
找不到远程主机“******.UK.IBM.COM”。 SQLSTATE=08001 SQLCODE=-1336
提前谢谢!
【问题讨论】:
【参考方案1】:您需要找到一个 Db2-connect 网关服务器(或安全网关),该服务器位于可从 bluemmix 访问并打开相关端口的区域中。此类访问、特定凭据、加密/密钥交换要求等可能需要批准。
我建议您让负责目标 Db2 系统的人员或管理目标数据的应用程序的服务所有者参与进来。
【讨论】:
【参考方案2】:对于使用 PHP Cloud Foundry 应用程序从 IBM Bluemix 连接到蓝区 zOS DB2,
-
专用Secure Gateway,
PHP buildpack 带有 DB2 扩展和
zOS DB2 license file copied to the right place
需要。
对于第 2 点,PHP buildpack,您只需更新您的 manifest.yml,将 build-pack 值添加或更新为:
buildpack: https://github.com/ibmdb/php-buildpack
然后您必须将使用的 PHP 版本设置为预先设置了 DB2 扩展的版本,因此它是在构建期间安装的。为此,您需要在项目根文件夹中有一个 composer.json 文件 - 具有此值的示例:
"require":
"php": "7.0.16"
【讨论】:
以上是关于使用 PHP Cloud Foundry 应用程序连接到 IBM zOS 系统/DB2 表的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Cloud Foundry Rabbit MQ 服务启用涡轮流
Pivotal Cloud Foundry - Spring Cloud 服务
如何在 Cloud Foundry 使用 Spring Boot 外部化配置