gateway for drda(db2udb8.1)提问
最近在做oracle异构数据库相连的实验,用到了oracle的gateway(透明网关)
按照oracle的官方文档配置,并测试连接,报错:ORA-28527: 多机种服务数据类型映射错误
google无果,特此来向高手请教,该如何搞
db2的版本环境 :  Windows+db2udb8.1   db2数据库名称为SAMPLE,端口50000
oracle server的版本环境:   Windows+10.2.0.1.0 ,监听端口为1521
gateway与oracle在同一台机器上,版本为10.2.0.1.0,监听端口为1522配置initsid.ora-->inithome.ora
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#
# HS specific parameters
#
FDS_CLASS=TG4DRDA_DB2UDB
#TRACE_LEVEL=255
#LOG_DESTINATION=DB2.log
#ORACLE_DRDA_TCTL=debug.tctl
HS_COMMIT_POINT_STRENGTH=255
HS_NLS_DATE_FORMAT=YYYY-MM-DD
HS_LANGUAGE=AMERICAN_AMERICA.WE8ISO8859P1
HS_RPC_FETCH_REBLOCKING=off
HS_RPC_FETCH_SIZE=32767
HS_FDS_FETCH_ROWS=20
#
# DRDA specific parameters
#
DRDA_CONNECT_PARM=192.168.1.110:50000
DRDA_REMOTE_DB_NAME=SAMPLE
DRDA_PACKAGE_COLLID=ORACLE
DRDA_PACKAGE_NAME=G2DRSQL
DRDA_PACKAGE_CONSTOKEN=A92617CB3FE54701
DRDA_RECOVERY_USERID=ORADRDA 
DRDA_RECOVERY_PASSWORD=ORADRDA
DRDA_ISOLATION_LEVEL=CS
#DRDA_PACKAGE_OWNER=ORADRDA
#DRDA_DISABLE_CALL=TRUE  
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
配置gateway的listener.ora
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# listener.ora Network Configuration File: D: oracle product 10.2.0 tg_1
etworkadminlistener.ora
# Generated by Oracle configuration tools.SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D: oracle product 10.2.0 tg_1)
      (PROGRAM = extproc)
    )
    (SID_DESC=
      (SID_NAME=home)
      (ORACLE_HOME = D: oracle product 10.2.0 tg_1)
      (PROGRAM=g4drsrv)
           )        
  )LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = kngsshalp1748a.internal.sungard.corp)(PORT = 1522))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
配置oracle_sever的tnsnames.ora,在原来的基础上增加如下数据行
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
HOME1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = kngsshalp1748a.internal.sungard.corp)(PORT = 1522))
    (CONNECT_DATA =
      (SID = home)
    )
    (HS = )
  )  
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
db2方面我建立了两个个新帐号HA,OTGDB2
HA是用于访问db2数据库的,我把db2该有的权限都给他了
create public database link home connect to HA identified by HA suing 'HOME1'
(该用户下已经创建了HA.ORACLE2PC表)OTGDB2,我也把db2该有的权限都给他了
OTGDB2是按照oracle gateway的官方文档,用来运行g4ddtab.sql和g4ddvwu8.sql,创建字典表和试图的
现在我一运行绑定包的语句
exec GTW$_BIND_PKG@home就报:
ORA-28527: 多机种服务数据类型映射错误那位搞过这个连接db2透明网关的大侠,指点一下小弟吧
在此先谢过了

解决方案 »

  1.   

    报错:ORA-28527: 多机种服务数据类型映射错误 后面还有提示信息不?
      

  2.   

    具体报错如下
    ORA-28527: 多机种服务数据类型映射错误 
    TG4DRDA v10.2.0.2.0 grc=0, drc=-332 (865B,0001), errp=GDJREACS
    errmc=1114,819
    ORA-02063: 紧接着 3 lines (起自 HOME1)**errmc=1114,819 中1114在codepage.map文件中有如下的注释
    1114 > ZHT16MSWIN950 # Traditional Chinese single-byte (繁体中文)
     819 = WE8ISO8859P1  # ISO/ANSI Multilingual  
    我装的都是简体中文的,造成这个报错的原因可能是字符映射关系没有搞对~
    请问谁能指点一下~