oracle导入数据出错:imp 00058:ora-12154:tns:无法连接指定的连接标识符

风过无痕1110 2011-02-12 02:51:36
导入语句imp sino/sino@dev file=D:\axa_cert.dmp full=y
在运行-》cmd执行上述语句出现如下错误:
IMP-00058: 遇到 ORACLE 错误 12154
ORA-12154: TNS: 无法解析指定的连接标识符
IMP-00000: 未成功终止导入

在cmd下运行:sqlplus sino/sino@dev能连接到数据库
执行 exp sino/sino@dev file=D:\axa_cert_exp.dmp 也是成功的
注册表中的ORACLE/HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1/ORACLE_SID为dev
我用当前实例导入的方法是正确的:如imp sino/sino file=D:\axa_cert.dmp full=y
就默认导入dev,但是不能指定sid导入,如改成imp sino/sino@uat file=D:\axa_cert.dmp full=y
或imp sino/sino@dev file=D:\axa_cert.dmp full=y就报上述错误
数据库中是有实例dev和uat的,sqlplus都能通。

dev下sino的权限是:
角色 管理选项 默认值
CONNECT N Y
DBA N Y
EXP_FULL_DATABASE Y Y
IMP_FULL_DATABASE Y Y

操作都是在本地进行的,数据库安装在本机,年前执行导入语句是没问题的,过完年后过来就出现了上述问题
才搜索引擎上查了很多,都没见我这种情况,请求高手支援

...全文
9875 23 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
锅得缸炒丁丁 2013-08-31
  • 打赏
  • 举报
回复
我也碰到类似的问题,由于除了装了ORCALE(Oracle - OraDb10g_home1)外, 还装了透明网关(Oracle - OraTg10g_home1), 在环境变量中PATH中会出现 C:\oracle\product\10.2.0\tg_1\bin;(透明网关) c:\oracle\product\10.2.0\db_1\bin;(ORCALE) 把c:\oracle\product\10.2.0\db_1\bin;这个目录放在最前面即可。 不知道楼主是否是装了多个的问题
tempest0312 2013-08-19
  • 打赏
  • 举报
回复
现在可以了吗
fool019 2013-04-07
  • 打赏
  • 举报
回复
这个问题有没有解决呢?
xiaomiao0815 2011-11-19
  • 打赏
  • 举报
回复
看看大家的经验,顺便学习下,自己水平有限,不能提供建议。
cuocuoyisheng 2011-10-19
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 tangyanbo1110 的回复:]
各位大大,我试了如下命令:
set oracle_sid=dev
imp sino/sino file=D:\axa_cert.dmp full=y ignore=y
是可以导入成功的,即先设置oracle_sid,再导入
如果执行如下命令:
imp sino/sino@dev file=D:\axa_cert.dmp full=y ignore=y
就报错
[/Quote]

我也遇到这样的问题。我现在是按照你的这个方法导入的。奇怪了,前两天我导入的时候还很顺利的。
zh_666 2011-02-16
  • 打赏
  • 举报
回复
重新配置一个Net Configuration Assistant和监听器如果,在导入试试
Mark_MaoHUA 2011-02-15
  • 打赏
  • 举报
回复
估计是客户端的tnsname.ora出问题了,建议配置和移植工具->Net Configuration Assistant中重建下
或者你装了两个Oracle,我以前碰到过,装两个Oralcle会出这个问题,需要更改环境变量的优先级
心中的彩虹 2011-02-15
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 tangyanbo1110 的回复:]
tnsname.ora:
# tnsnames.ora Network Configuration File: E:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

DEV =
(DESCRIPTION =
(ADDRESS = (……
[/Quote]
试试

imp sino/sino@DEV file=D:\axa_cert.dmp full=y ignore=y
风过无痕1110 2011-02-15
  • 打赏
  • 举报
回复
listener.ora:
# listener.ora Network Configuration File: E:\oracle\product\10.2.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = dev)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
(SID_NAME = dev)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = MICROSOF-75DC5C)(PORT = 1521))
)
)

风过无痕1110 2011-02-15
  • 打赏
  • 举报
回复
tnsname.ora:
# tnsnames.ora Network Configuration File: E:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

DEV =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dev)
)
)

DEV2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = MICROSOF-75DC5C)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dev2)
)
)

DEV1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = MICROSOF-75DC5C)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dev1)
)
)

UAT =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = MICROSOF-75DC5C)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = uat)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

linsond 2011-02-14
  • 打赏
  • 举报
回复
直接赋予dba权限试试……
心中的彩虹 2011-02-14
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 tangyanbo1110 的回复:]
各位大大,我试了如下命令:
set oracle_sid=dev
imp sino/sino file=D:\axa_cert.dmp full=y ignore=y
是可以导入成功的,即先设置oracle_sid,再导入
如果执行如下命令:
imp sino/sino@dev file=D:\axa_cert.dmp full=y ignore=y
就报错
[/Quote]

把你的tnsname.ora 的内容贴出来
xman_78tom 2011-02-14
  • 打赏
  • 举报
回复
imp sino/sino@dev 命令中的 dev 为 tns 别名,由 tnsname.ora 中的设置决定。检查一下 tnsname.ora 文件中 dev 别名所指向的实例。
Oraclefans_ 2011-02-14
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 tangyanbo1110 的回复:]

各位大大,我试了如下命令:
set oracle_sid=dev
imp sino/sino file=D:\axa_cert.dmp full=y ignore=y
是可以导入成功的,即先设置oracle_sid,再导入
如果执行如下命令:
imp sino/sino@dev file=D:\axa_cert.dmp full=y ignore=y
就报错
[/Quote]

set oracle_sid 命令是设置的默认的数据库的实例。。。
你可以在报错之前查看的注册表里,看你的sid是什么你就可以找出你
默认操作的sid了。。
风过无痕1110 2011-02-14
  • 打赏
  • 举报
回复
各位大大,我试了如下命令:
set oracle_sid=dev
imp sino/sino file=D:\axa_cert.dmp full=y ignore=y
是可以导入成功的,即先设置oracle_sid,再导入
如果执行如下命令:
imp sino/sino@dev file=D:\axa_cert.dmp full=y ignore=y
就报错
心中的彩虹 2011-02-13
  • 打赏
  • 举报
回复
[Quote=引用楼主 tangyanbo1110 的回复:]
导入语句imp sino/sino@dev file=D:\axa_cert.dmp full=y
在运行-》cmd执行上述语句出现如下错误:
IMP-00058: 遇到 ORACLE 错误 12154
ORA-12154: TNS: 无法解析指定的连接标识符
IMP-00000: 未成功终止导入

在cmd下运行:sqlplus sino/sino@dev能连接到数据库
执行 ex……
[/Quote]
dos下先指定实例
set oracle_sid=dev (linux export ORACLE_SID=dev)

imp sino/sino@dev file=D:\axa_cert.dmp full=y ignore=y
xman_78tom 2011-02-12
  • 打赏
  • 举报
回复
sino/sino@dev 中的 dev 并不是 oracle_sid,而是定义在 tnsname.ora 中的别名。从 tnsping dev 的结果看,dev 别名指的是 uat 实例(SERVICE_NAME = uat)。

如果要将数据导入指定的实例中,在本机上可以通过修改 ORACLE_SID 环境变量实现。
导入 dev 实例关联的数据库
c:\> set ORACLE_SID=dev
c:\> imp sino/sino ...
导入 uat 实例关联的数据库
c:\> set ORACLE_SID=uat
c:\> imp ...

或者,使用 netmgr 在 tnsname.ora 上分别为这两个实例添加别名,通过别名访问它们(当然需要确保启动侦听器)。

风过无痕1110 2011-02-12
  • 打赏
  • 举报
回复
网络上多有的方法都试过了,现在的问题是能导入的,但不能指定导入到某个实例下
之前是可以的,现在不对了
风过无痕1110 2011-02-12
  • 打赏
  • 举报
回复
能ping通
TNSPING DEV
已使用的参数文件:
E:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora


已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = MICROSOF
-75DC5C)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = uat)
))
OK (20 毫秒)
iqlife 2011-02-12
  • 打赏
  • 举报
回复
SQLPLUS不能代表TNSNAME一定通过,先TNSPING你的DEV 看是否听过
CMD下运行 :TNSPING DEV
加载更多回复(1)

17,382

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧