我想用oracle查看sqlserver 2000数据库上的数据(暂时在一台电脑上实现),用的如下方法,但是除了点错误,望各位大侠指教:
1.
D:\oracle\product\10.2.0\tg_1\tg4msql\admin下新建initstudent.ora
HS_FDS_CONNECT_INFO=dexin-c2fa7a4f8.student
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER2.
D:\oracle\product\10.2.0\tg_1\NETWORK\ADMIN\listener.ora
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 = student)
      (ORACLE_HOME = D:\oracle\product\10.2.0\tg_1)
      (PROGRAM = tg4msql)-----用改成PROGRAM = student吗?
    )
  )LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC2))
      (ADDRESS = (PROTOCOL = TCP)(HOST = dexin-c2fa7a4f8)(PORT = 1521))
    )
  )3.
D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = dexin-c2fa7a4f8)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )student=
(DESCRIPTION=
   (ADDRESS=(PROTOCOL=TCP)(HOST=dexin-c2fa7a4f8)(PORT=1521))
   (CONNECT_DATA=
   (SID=student)
 )
 (HS=OK)
)4.更改global_names:alter system set global_names=false;成功5.建立数据库连接:
    create database link student connect to sa identified by "42409864" using 'student';成功6.重启9i的监听服务:运行-lsnrctl reload7.lsnrctl status (问题出来了,没有显示student例程的状态)
  如果我在D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\listener.ora中加入第二步内容则显示
  student例程,状态为NUKNOWN,包含此服务的1个处理程序(是否应该改db_1的listener的内容呢?)8.tnsping student(显示无法解析名称,但是如果我把host改为127.0.0.1则这一步正常)9.测试:select * from db_studentmessage@student
第 1 行出现错误:
ORA-28545: 连接代理时 Net8 诊断到错误
Unable to retrieve text of NETWORK/NCR message 65535
ORA-02063: 紧接着 2 lines (起自 STUDENT)