暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle SQL * 加载程序连接错误

askTom 2017-10-11
444

问题描述

我以前问我的SQL * Loader问题的答案,你说:

SQL * 加载程序字符串示例
sqlldr.exe userid=my_user/my_password@some_string control=my_control.ctl 
sqlldr.exe userid=scott/tiger@//my_host:my_port/my_service_name control=my_control.ctl 
复制


当您有SQL * Loader时,请与我们联系以获取其他帮助。

------------------------

要填充此字符串以正确执行,在TNS编辑中找到有关我的数据库的数据:

EDWD.TAKEDAPHARM.COM=
  (DESCRIPTION=
    (ADDRESS=
      (PROTOCOL=TCP)
      (HOST=takt01-scan.unix.tpna.com)
      (PORT=1521)
    )
    (CONNECT_DATA=
      (SERVICE_NAME=tedwd.takedapharm.com)
    )
  )

my control file

LOAD DATA
INFILE 'C:\Users\jgiallom\Documents\RADS42Development Area\DataLoadSLQLoader\ThirdParty_Data.csv' 
BADFILE 'C:\Users\jgiallom\Documents\RADS42DevelopmentArea\DataLoadSLQLoader\ThirdParty_Data.bad'
DISCARDFILE 'C:\Users\jgiallom\Documents\RADS42DevelopmentArea\DataLoadSLQLoader\ThirdParty_Data.dsc'

INTO TABLE "DOBS"."CP_THIRDPARTY"
APPEND
FIELDS TERMINATED BY '|'
(ID,
MASTER_RECORD_TYPE,
NAME,
PRIMARY_STREET_ADDRESS,
PRIMARY_COUNTRY,
PRIMARY_CITY,
PRIMARY_STATE_PROVINCE,
ZIP,
CLIENT_ID,
ITEM_TYPE,
PATH,
DATAYEAR)

LOADER STRING

 sqlldr.exe userid=*****/*****@//takt01-scan.unix.tpna.com:1521/TEDWD.TAKEDAPHARMA.COM control=ThirdPartyData.ctl
复制


我运行包含所有文件的CMD和cd \ mydirectory。

我仔细键入 [上面的行],并收到以下错误消息:


SQL*Loader: Release 11.2.0.3.0 - Production on Wed Oct 11 09:59:58 2017

in the log:

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

If I try a simple string  sqlldr.exe userid=myID/password control=mycontrol.ctl

I get error message:




SQL*Loader: Release 11.2.0.3.0 - Production on Wed Oct 11 10:07:34 2017

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0]
ORA-12560: TNS:protocol adapter error
复制


我的问题: 你能提供任何关于什么是错误的建议,以及我如何纠正我在做什么?

谢谢。


专家解答

你的配置出了问题。可能是数据库已关闭,未在侦听器中注册,或者您的服务名称错误。或上述的某种组合;)

您可以通过以下方式检查服务名称:

select value from v$parameter 
where name='service_names';
复制


您可以在以下位置找到有关这些错误的原因和解决方案的更多信息:

http://docs.oracle.com/database/122/NETAG/troubleshooting-oracle-net-services.htm#NETAG394
https://asktom.oracle.com/pls/asktom/f?p=100:11:0::NO::P11_QUESTION_ID:431775600346873836
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论