PLSQL正常sqlplus报错

目前在做一个基于C/S开发的项目,使用的是Oracle10g 数据库地址是10.*.*.21 ,我在PLSQL中可以连接。但是在cmd中能

tnsping通地址,连接时却报错 “ORA-12154: TNS: 无法解析指定的连接标识符”,请教高手解答,万分感谢。

附1 tnsnames.ora:
# tnsnames.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = *****)(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)
)
)

10.*.*.21 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.*.*.21)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = sdh)
)
)

附2 cmd 下tnsping和sqlplus命令记录

C:\Windows\system32>tnsping 10.*.*.21

TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 15-9月 -
2011 10:02:05

Copyright (c) 1997, 2005, Oracle. All rights reserved.

已使用的参数文件:
D:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora

已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.*.*.21)(PORT = 1521))

(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = sdh)))

OK (50 毫秒)

C:\Windows\system32>sqlplus/nolog

SQL*Plus: Release 10.2.0.1.0 - Production on 星期四 9月 15 10:02:36 2011

Copyright (c) 1982, 2005, Oracle. All rights reserved.

SQL> conn 用户名/密码@sdh as sysdba
ERROR:
ORA-12154: TNS: 无法解析指定的连接标识符

有两个概念你搞混了,一个是服务名sid,你要用到的应该是sdh,另一个是你在本地的服务命名,你在这里是配置的其实是10.*.*.21 ,按照你的要求你应该需要配置成sdh(可以和主机服务sid不一样,但是你这里我知道你想用sdh)。
所以你用tnsping 10.*.*.21没有错误,但是你用应该用的是tnsping sdh来检查。
修改下tnsnames.ora文件中的“10.*.*.21 ”= 改成“sdh=”
然后用tnsping sdh来检查是否能通过,我想是没有问题的,这样你就可以登录了。当然不改的话,你这样也可以登录 SQL> conn 用户名/密码@10.*.*.21 as sysdba
温馨提示:内容为网友见解,仅供参考
无其他回答

...大牛:oracle连接数据库,PLSQL正常,sqlplus报错ORA-12154
你的命令输错了吧如果你要连接的是这个数据库的话,命令应该是 @10.*。*。21 10.*.*.21 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.*.*.21)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = sdh)))你的命令输错了吧 ...

...利用sql plus登陆却 登陆不上去,但是用pl sql 却可以能登陆上去,为 ...
从你SQL PLUS后面的提示 应该是oracle数据库没启动起来啊。 你在cmd中输入sqlplus \/ as sysdba 进入SQL>命令行 输入shutdown abort; startup 试一下 本回答由提问者推荐 举报| 答案纠错 | 评论(1) 3 0 raylmtxwd 采纳率:41% 擅长: 暂未定制 其他回答 oracle数据库没启动起来,检查一下oracle相关服务...

Oracle数据库用sqlplus连接不了,用PLSQL却可以连接上
你的命令行方式不能登录,应该是你环境变量的问题,因为系统找不到Oracle目录下的sqlplus.exe,设置一下环境变量,在Path里面把Oracle安装目录下到类似product\\11.2.0\\dbhome_1\\BIN目录。

oracle可用plsql登录 但是用sqlplus却不行
conn sys\/pass@orcl都不行 好像是要改为nolog模式 如何改?sys规定一定得用as sysdba才能登录

跪求高手指点!!!SQL plus登不上,出现协议适配器错误。PLSQL Developer...
1.一般协议适配器错误都是由于oracle服务未启动导致,首要任务是确定你的数据库服务启动了。可输入命令oradim -SID ORACLE_SID(数据库sid) startup;2.请确定你的plsql developer不是nolog登录(假登录)。3.试试利用操作系统验证的登录模式,启动数据库;启动sqlplus :sqlplus \/NOLOG 操作系统登录 SQL...

我用sqlplus能连接oracle数据库,但用plsql连接时出现 ora 12560协议适配...
PL\\\\\/SQL和SQL*PLUS走的不是一个Tnsnames.ora。找找有几个Tnsnames,都改成正确的配置。或者修改环境变量中的path路径,把正确的路径写在前面。

SQLPLUS能连接oracle10g,PLSQL也能连,但网页程序却报错ORA-12154: TN...
SQLPLUS能连接oracle10g,PLSQL也能连,但网页程序却报错ORA-12154:TNS:无法解析指定的连接标识符网页程序是.net程序tnsping正常,lsnrctl也正常,没有更换IP。... SQLPLUS能连接oracle10g,PLSQL也能连,但网页程序却报错ORA-12154: TNS: 无法解析指定的连接标识符网页程序是.net程序 tnsping正常,lsnrctl也正常,没有...

oracle 数据库用cmd sqlPlus能链接上但是plsql链接本地就卡死??_百度...
可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。 oracle 数据库 sqlplus plsql cmd 搜索资料本地图片 图片链接 代码 提交回答正在求助 热心网友问: 初中女生答,你对自己的XIONG满意吗? 回答 初回岚音问: 卸载了c4d(直接安装在e盘里的),结果整个e盘大部分文件都没了,怎...

用sqlplus可以登录Oracle10g, 但是plsql Developer却无法正确登录oracle...
sqlplus 可以连接,plsql不行说明监听服务没有起来。如果是安装在自己机器上的oracle,试试以下步骤 1.在命令行里输入sqlplus \/ as sysdba 如果没有显示成功连接的信息,说明是ORACLE没有开,在windows服务中打开ORACLE<你的SID>这样命名的服务。2.在命令行中尝试tnsping orcl,如果显示错误,在windows...

在orcle自带的SQL Plus里能运行,在PL\/SQL里不能运行,报错:无效SQL语句...
PLSQL里不支持desc 表名 这种操作,在sqlplus和另外有的软件里可以执行 但是你非要执行的话,可以采用下边的语句 SELECT DTC.OWNER,DTC.TABLE_NAME,DTC.COLUMN_NAME,DTC.DATA_TYPE,DTC.NULLABLE,DTC.DATA_DEFAULT,DCC.commentsFROMDBA_TAB_COLUMNS DTC, DBA_COL_COMMENTS DCCWHERE DTC.OWNER = DCC....

相似回答
大家正在搜