【问题标题】:AS/400 DDM service not runningAS/400 DDM 服务未运行
【发布时间】:2019-01-04 06:33:10
【问题描述】:

我想建立一个从 Windows PC 到 AS/400 DB2 服务器的 ODBC 连接,我编写了一个 VBA 程序。但我收到以下错误。

Remote port could not be resolved

然后,我用CWSPING检查了服务器的状态,结果如下:

I - Verifying connection to system 192.168.1.2...
I - Successfully connected to server application: Central Client
I - Successfully connected to server application: Network File
I - Successfully connected to server application: Network Print
I - Successfully connected to server application: Data Access
I - Successfully connected to server application: Data Queues
I - Successfully connected to server application: Remote Command
I - Successfully connected to server application: Security
E - CWBCO1011 - Remote port could not be resolved
E - CWBCO1008 - Unable to connect to server application DDM, returned 8407
I - Successfully connected to server application: Telnet
W - CWBCO1015 - Connection verified to system 192.168.1.2, but there were warnings

这意味着DDM 服务不在服务器上运行。 ODBC连接需要DRDA,它运行在DDM服务上,所以我认为运行DDM服务是建立ODBC连接的关键。所以我尝试了 STRTCPSVR *DDM 命令但得到了下面的结果

*DDM not valid for parameter SERVER

还尝试了 CHGDDMTCPA AUTOSTART(*YES) PWDRQD(*YES) 命令,但出现错误,我被卡住了。

Command CHGDDMTCPA in library *LIBL not found

有人知道在 AS400 上启用DDM 服务器吗?

  • 服务器:IBM AS400
  • 操作系统版本:V4R1

【问题讨论】:

    标签: odbc ibm-midrange db2-400


    【解决方案1】:

    试试STRHOSTSVR *DATABASE

    STRHOSTSVR 用于启动与 IBM i Access 和 i Access Client Solutions 关联的服务器。

    STRTCPSVR 通常用于启动与 TCP/IP 相关的服务器,例如 FTP、Telnet 等。除了通过 Web 管理站点 http://<server>:2001 启动的 HTTP 服务器。

    【讨论】:

    • 我尝试了 STRHOSTSVR *DATABSE 但没有任何改变。服务器似乎没有 DDM/DRDA 服务。所以我使用了不使用 DRDA 的 JDBC 连接。
    【解决方案2】:

    除了@jmarkmurphy 的回答:

    • 您可以轻松检查netstat *cnn 的开放端口。
    • 实际上有一个名为 *ddm 的 tcpsvr,但它不与 ODBC 一起使用。
    • ODBC-Access 只需要主机服务器 *database。对主机服务器没有任何进一步的要求。
    • 要检查在 tcp 启动时启动了哪些服务,请使用 strfdu,选项 5 和文件 qusrsys/qatocstart。从那里您可以轻松查看和更改应该开始的内容和不应该开始的内容。

    【讨论】:

      【解决方案3】:

      最后,我使用 JDBC 进行了连接。我发现的总结如下:

      • ODBC 似乎使用 DRDA(端口 446),但服务器没有 DRDA/DDM 服务
      • OLEDB 似乎正在连接数据访问(端口 8471)但发出未知错误
      • JDBC 还连接了数据访问(端口 8471),并且成功了!

      我在使用 ODBC 时遇到的第一个错误是“无法解析远程端口”。这背后发生的事情似乎如下:

      1. ODBC 要求服务器映射器(端口 449)查找 DRDA 端口(它可能在服务器上更改)
      2. Server Mapper 找不到 DRDA 端口,因为服务器没有 DRDA 服务
      3. ODBC 显示“端口未解析”错误

      然后,我这次尝试了OLEDB。它正确检查了用户/密码,但发出了未知错误。当我输入错误的密码时,它显示“密码不正确”,这意味着OLEDB成功登录到服务器,但登录后出现错误。

      最后,我使用了JDBC,连接成功!通常,连接 url 类似于“jdbc:as400://”,但显示错误。使用 JDBC 的跟踪,登录到服务器时似乎有问题。于是我把url改成了“jdbc:as400://:8471”,然后我终于连接上了。查看跟踪,它直接访问端口 8741 并发送用户/密码并连接。我不知道细节,但它有效!

      感谢您的帮助!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-05-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-25
        • 2016-10-23
        相关资源
        最近更新 更多