1

首先,我是使用 Oracle 的新手,需要从 Oracle 11.2 连接到 SQL Server 2005。我阅读了很多文章,但仍然无法设置异构连接。我请求任何帮助,好吗??提前致谢

显示的错误是 ORA-12154

我正在使用一台运行 Windows 7 的电脑,它有 Windows 虚拟 xp。
Oracle 安装在 XP 虚拟机上,SQL 2005 安装在 windows 7 机器(64 位)上。

列出了我在 tnsnames.ora、listener.ora 和 initdg4sql.ora 中的条目:

tnsnames.ora

dg4msql=
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = TCP)(HOST = VirtualXP-28481)(PORT = 1521))
  (CONNECT_DATA = (SID = dg4msql)
)
(HS = OK)
)

监听器.ora

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
     (SID_NAME = dg4msql)
     (ORACLE_HOME = C:\app\XPMUser\product\11.2.0\dbhome_1)
     (PROGRAM = dg4msql)
   )
  )
LISTENER =
 (DESCRIPTION_LIST =
   (DESCRIPTION =
     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
   )
   (DESCRIPTION =
     (ADDRESS = (PROTOCOL = TCP)(HOST = VirtualXP-28481)(PORT = 1521))
   )
 )

ADR_BASE_LISTENER = C:\app\XPMUser

initdg4sql.ora

HS_FDS_CONNECT_INFO=[inspiron]//Academic
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
4

1 回答 1

1

ORA-12154 是一个非常常见的错误,总是与您的 tnsnames.ora 文件的本地副本、您的侦听器配置和您的数据库名称别名有关。

  • 确保您的侦听器正在侦听您正在使用的相同服务名称。

  • 您的服务名称可能有别名,因此请检查全局(世界)条目和本地条目。查看:

    $ORACLE_HOME/network/admin/tnsnames.ora

  • 使用此 SQL 检查您的 global_name 设置:

    select * from global_name;

查询值应与 db_name 和 db_domain 的 init.ora 参数匹配

来源

于 2015-10-13T14:34:13.013 回答