plsql连接oracle数据库报ora 12154错误解决方法

plsql连接oracle数据库报ora 12154错误
今天遇到一个问题,使用sqlplus能够连接到远程的数据库,但是使用plsql却连接不上,报错"ORA-12154: TNS: 无法解析指定的连接标识符"

解决方法如下
1.先检查服务器端的监听服务是否打开,如果没有打开请启动其监听
客户端:tnsping <tns_name>
服务器Linux下:
#>lsnrctl status 查看监听状态
#>lsnrctl start 启动监听
2.通过Sql Plus连接一下试试,如果Sql Plus连接能成功,那就说明你的tnsnames.ora内容有错误 我的问题就在别名dev_db前面有一个空格,这个可以通过文本编辑器(Edit Plus,UE等)来查看是否有空格,只要有空格那就肯定是不行的,而且如果那段内容是出现在文件的中间的话,将导致该文件里所有相应的连接别名都不成功,如果是在最后面就只有其自身连接别名不能成功,其他连接别名还是能连接成功。(注:我的tnsnames.ora配置了多个数据库实例的连接,所有才有多个连接别名。)
如: 空格


代码如下:

dev_db =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.168.10.5)(PORT = 1521)))
(CONNECT_DATA =
(SID = ora10)
)
)

3.如果确保你的tnsnames.ora内容没有错误,那请将%ORACLE_HOME%\product\10.2.0\db_1\NETWORK\ADMIN目录下的所有文件删了,然后重新连接,一般就能解决了。 说明一下:那个目录里的文件是在你建立连接的时候动态生成的,不要怕删了会有问题
4.进入PLSQL Developer的主界面,在登录界面选择取消即不登录进入主界面,然后选择菜单Tools(工具)-Preferences(首选项),在设置窗口中,选择Oracle-Connection(连接),对应设置窗口中,找到Oracle Home(Oracle主目录),选择你本地所安装客户端的版本,保存设置,然后重新启动PLSQL Developer,这时就可以正常登录了。
我是使用第二种方法解决的。

(0)

相关推荐

  • 与虚拟机Oracle连接出现ora-12154问题的解决方法

    谈到ora-12154问题,网上有一大堆解决方法,原因基本统一:tns或listener配置不正确.对于listener配置不正确的一般较少发生,大多数人都是按照默认配置一路"下一步"过来的,基本都是orcl的服务名,如果说本地可以连通orcl,别的机子就连不通那应该跟listener关系不大.大部分都是tns配置不正确.我遇到的现象是:在本机建了一个2003的虚拟机,虚拟机里面装了oracle10g,默认配置.本机只装了oracle10g的客户端,当我以前用本机连接局域网内数据库的o

  • Oracle导dmp出现文件ORA-12154: TNS: 无法解析指定的连接标识符问题的解决方案

    其实TNS无法解析是Oracle操作里经常遇到的问题,原因有二: (1)Oracle服务器没有装好(一般不建议重装,因为Oracle卸载不完全是没法重装的) (2)TNS没有配置 现在本文给出解决方案: 现在先测试一下tns是否可以ping,成功的界面大致如下 (1)在oracle安装路径的tns配置文件里添加如下代码 # tnsnames.ora Network Configuration File: d:\Oracle\product\10.2.0\client_1\NETWORK\ADMI

  • Oracle连接出现ora-12154无法解析指定的连接标识符

    配置好rac后,两个节点用tnsping都可以ping通,但用sqlplus连接都出现以下错误,不知道哪里出了问题 [oracle@rac2 admin]$ lsnrctl status LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 04-MAR-2008 08:32:26 Copyright (c) 1991, 2002, Oracle Corporation.  All rights reserved. Connecting to

  • Oracle出现ora-12154无法解析指定连接标识符的解决方法

    相信使用过Oracle数据库的人一定碰到过"ORA-12154: TNS: 无法解析指定的连接标识符"错误,我在此做一个小小的总结. 在程序中连接Oracle数据库的方式与其他常用数据库,如:MySql,Sql Server不同,这些数据库可以通过直接指定IP的方式连接,但是Oracle则需要通过Oracle客户端配置网络服务名的方式来连接.否则就会出现"ORA-12154: TNS: 无法解析指定的连接标识符".配置Oracle客户端详细步骤如下: 安装好Orac

  • plsql连接oracle数据库报ora 12154错误解决方法

    plsql连接oracle数据库报ora 12154错误 今天遇到一个问题,使用sqlplus能够连接到远程的数据库,但是使用plsql却连接不上,报错"ORA-12154: TNS: 无法解析指定的连接标识符" 解决方法如下: 1.先检查服务器端的监听服务是否打开,如果没有打开请启动其监听 客户端:tnsping <tns_name> 服务器Linux下: #>lsnrctl status 查看监听状态 #>lsnrctl start 启动监听 2.通过Sql

  • PLSQL连接oracle数据库过程图解

    换电脑,重新装了PLSQL,连接oracle数据库. 1.下载Instant Client, 下载地址:https://www.oracle.com/database/technologies/instant-client/downloads.html 本人刚好有之前版本,路径为 E:\Program Files\instantclient_10_2 2.打开PLSQL,点取消,然后弹出PLSQL主界面,点击菜单栏的"工具"--"首选项",设置Oracle主目录和O

  • NodeJS连接MongoDB数据库时报错的快速解决方法

    今天第一次尝试连接MongoDB数据库,具体步骤也很简单. 首先,通过NodeJS运行环境安装MongoDB包,进入要安装的目录,执行语句 npm install mongodb安装成功后,通过如下语句测试与数据库建立连接几关闭数据库 var mongo = require('mongodb'); var host = "localhost"; var port = mongo.Connection.DEFAULT_PORT; //创建MongoDB数据库所在服务器的Server对象

  • Oracle数据库并行查询出错的解决方法

    Oracle的并行查询是使用多个操作系统级别的Server Process来同时完成一个SQL查询,本文讲解Oracle数据库并行查询出错的解决方法如下: 1.错误描述 ORA-12801: 并行查询服务器P007中发出错误信号 ORA-01722:无效数字 12801.00000 -"error signaled in parallel query server %s" *Cause: A parallel query server reached an exception cond

  • plsql 连接oracle数据库详细配置的方法步骤

    第一次用这种方式连接oracle数据库,自己百度搞了快两个小时才弄好,百度的资源也不靠谱,看了好多都不完整,搞完了报各种错误,各种连不上数据库,自己整理下资料,希望给其他的同行予以借鉴,不能保证每个人都能操作成功!毕竟有时真的得看人品了,呵呵! 第一步:先安装plsql客户端,plsql客户端是必须的,我的是同事给的plsql(英文版客户端)安装很简单(下一步下一步.......)就不做说明! 第二步:下载 oracle client我的是64位操作系附赠下载地址:https://www.jb5

  • Oracle数据库用户密码过期的解决方法

    目录 问题现象: 问题分析: 解决方法: 总结 问题现象: 今天在更改数据库数据的时候,程序报错了,如下: ORA-28001:the password has expired 问题分析: 很显然,报错原因就是: 密码已过期! 所以现在需要做的事情只有两件: 1.修改密码的过期时间 2.修改/重置密码 这里分析一下为什么要这样做: 1.修改密码的过期时间:这是因为Oracle Database 11g 版本的Oracle数据库有一项默认配置,就是密码过期时间默认为180天(6个月左右): 通过s

  • oracle 11g em重建报唯一约束错误解决方法

    今天在手工配置Oracle11g的EM时总是报如下错误: WARNING:ORA-00001:uniqueconstraint(SYSMAN.PARAMETERS_PRIMARY_KEY)violated ORA-06512:at"SYSMAN.EMD_LOADER",line4986 ORA-06512:atline1 以Metalink上也没有找到解决办法,以下是我的解决过程: 1.数据库版本 SQL>select*fromv$version; BANNER --------

  • linux系统oracle数据库出现ora12505问题的解决方法

    说明: (1)Linux版本 Linux version 2.6.32.12-0.7-default (geeko@buildhost) (gcc version 4.3.4 [gcc-4_3-branch revision 152973] (SUSE Linux) ) #1 SMP 2010-05-20 11:14:20 +0200 1.查看数据库是否已经启动 命令:ps -ef|grep ora 截图: 2.查看监听(要连接到相应用户(su - oracle),例如:oracle) 命令:l

  • SQLSERVER数据库中的5173错误解决方法

    昨天同事给你我一个有问题的数据库,叫我修复一下因为客户那边需要这个数据库,这个数据库只有一个mdf文件和一个ldf文件, 当我附加数据库的时候报错,数据库是SQL2005 附上有损坏的数据库文件: 因为之前在论坛也遇到过,所以按照论坛的方法来解决,结果还是不行 把ldf文件移到别的地方,然后附加的时候使用下面SQL语句重建事务日志文件 我的数据库文件放在C:\Users\Administrator\Desktop\新建文件夹目录下 复制代码 代码如下: USE [master] GO CREAT

  • 登录oracle数据库时密码忘记的解决方法

    我们在通过http://localhost:1158/em进行登录oracle时,我们忘记密码时,应该怎么办? 运行sqlplus进入输入密码界面 用户名输入: connect as sysdba 密码:这边乱输就可以了 然后进行输入下面的命令: 修改密码命令 alter user system identified by 新密码; 成功后马上登陆发现登陆不了提示用户名被锁所以从新进入运行下面代码解锁 alter user myuser account unlock;

随机推荐