linux中连接Oracle数据库报ORA-12514错误,找不到原因

linux中连接Oracle数据库报ORA-12514错误,找不到原因,第1张

服务没有注册到监听上,请把下面命令执行结果贴出来

cat /etc/hosts

cat   /opt/oracle/app/product/11.2.0/dbhome_1/network/admin/listener.ora

show parameter local_listener

hostname

Linux系统下可以用sqlplus命令连接oracle数据库,方法如下:sqlplus命令语法:#sqlplus usr/pwd@//host:port/sid#usr:用户名#pwd:密码#host:数据库服务器IP#port:端口#sid:数据库标识符sqlplus命令连接Oracle示例:[oracle@mzl ~]$ sqlplus risenet/1@//192.168.130.99:1521/risenetSQL*Plus: Release 10.2.0.1.0 - Production on Mon Feb 18 15:53:34 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to:Oracle9i Enterprise Edition Release 9.2.0.1.0 - ProductionWith the Partitioning, OLAP and Oracle Data Mining optionsJServer Release 9.2.0.1.0 - Production#测试数据库select查询语句SQL>select instance_name,status from v$instanceINSTANCE_NAMESTATUS---------------- ------------risenet OPENSQL>

到$ORACLE_BASE/product/11.1/network/admin 下。

首先查看sqlnet.ora 文件,

如果文件中有这样:NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

命令 sqlplus db_name/db_passwd@oracl就会首先在tnsnames.ora文件中找orcl的记录.如果没有相应的记录则尝试把orcl当作一个主机名,通过网络的途径去解析它的 ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例

之后在这个目录下创建 tnsnames.ora 文件(vi tnsnames.ora)

添加类型如下配置

oracle=

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 10.42.54.241)(PORT = 1522))

)

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = msr)

)

)

注意第一行不要有空格

保存后,可以用tnsping 命令,检测是否连接成功

tnsping oracl

如果出现类似如下提示表示配置成功

Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.42.54.241)(PORT = 1522))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = msr)))

OK (0 msec)

之后在客户端运用sqlplus命令就可以取得服务端的连接了

sqlplus db_name/db_passwd@oracl


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7378850.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存