ORA12514ORA12541 ORA12154 忘记密码 锁住用户 解决方案.docx
《ORA12514ORA12541 ORA12154 忘记密码 锁住用户 解决方案.docx》由会员分享,可在线阅读,更多相关《ORA12514ORA12541 ORA12154 忘记密码 锁住用户 解决方案.docx(18页珍藏版)》请在冰豆网上搜索。
ORA12514ORA12541ORA12154忘记密码锁住用户解决方案
今天整个一天我都在oracle中晃悠,修复PLSQL无法登陆的问题,到现在终于解决了。
感觉走了很多弯路,希望在这里能给大家一些帮助。
指导一下大家解决:
忘记密码、用户被锁住,登陆时出现的ORA-12154TNS无法解析指定的连接标识符、ORA-12514TNS:
监听进程不能解析描述符和ORA-12541无监听程序。
这三类错误是经常见的,命名都十分相似。
下面我们来一一解决。
首先我要申明,这里提供多种解决方式,因为每个人电脑环境都不一样,造成这种错误的原因也各不相同,所以大家多尝试肯定会解决你的问题。
第一个问题:
忘记密码怎么办?
用户锁住了怎么办?
1进入cmd
2sqlplus/assysdba
3alterusersysidentifiedby新密码;(例如:
alteruserscottidentifiedbytiger)这句话的意思是将scott用户的密码设置成by后面的字符串tiger。
当然你也可以新建一个用户,步骤如下
1进入cmd
2sqlplus/assysdba或者sqlplussys/密码assysdba
3createuser用户名identifiedby密码;
4grantconnect,resourceto用户名;
5conn用户名/密码
说明:
如果第5步可以连接成功说明,用户建立成功,就可以用这个用户登录了。
提示:
这里的输入口令,你只要输入就可以,它不会显示出来的,输入完密码之后按下Enter就可以了,出现连接到:
就说明成功连接数据库。
那么我们用刚刚修改了密码的scott登录时候出现了,用户锁住了,我们可以用sys登录,然后使用
Alteruserscottaccountunlock;
出现用户已更改,说明解锁成功,可以使用scott用户登陆了。
这样对于密码的问题,我们就已经解决了。
---
ORA-12154TNS无法解析指定的连接标识符。
首先要确保你的sqlplus能连接到oracle数据库,如果你的sqlplus都无法连接数据库,就是数据库的配置有问题,这个不在我们解决问题的范围内。
首先打开:
可以成功连接数据库,说明oracle基本的配置是对的。
那么为什么PLSQL不能登陆呢?
还出现无法解析指定的连接标识符呢?
这里分多种情况。
1、如果你的电脑是32的位的话,并且没有安装客户端(我装了服务器端和客户端),那么你登陆的时候,选择取消,然后打开PLSQL工具->首选项->oracle连接在oracle主目录下进行下拉选择
然后确定,再次进行登陆。
问题如果成功解决就好了。
如果还没解决就接着往下看,然后你要确保你的PLSQL的安装路径中没有出现奇怪的符号(如64位系统中D:
\programFile(x86)\......)这里的括号就是奇怪的符号,oracle识别不了,所以重装一次PLSQL吧!
如果还是不行,你重新配置一下本地的NET服务器和监听器(这个和后面的12541错误一样的),参照ORA-12541的做法一下,重新配置一下即可。
2、如果你的电脑是32位的,并且也装了客户端,在经历了上诉的解决方案之后还是无法解决的话,你可以打开“我的电脑”,将你的环境换量里面的client的那段路径给删掉然后保存
记得连后面的分号都删掉。
然后你再次尝试一下就可以登录了,当然这几种方法都是可能的解决方案,你可以来回尝试的。
3、如果你的电脑是64位的,并且没有安装client,那么解决方案和32位的没有安装client的处理方法一样,只不过这里更应该注意的是安装路径的问题,不要有奇怪的符号,但是我感觉这是永远都无法实现的,因为安装了64位的Oracle,结果试图使用PLSQLDeveloper去访问它的时候,报告说无法加载oci.dll文件。
原因oci.dll是64位的,32位应用程序PLSQLDeveloper自然无法加载了。
这也只是我个人的猜想,所以感觉还是一定需要有client。
试验了下,解决办法如下:
4、如果你的电脑是64位的,也安装了client,那么这样的上面的方法你都可以尝试。
你装了client之后,通过上诉方法,包括制定oracle主目录,重启监听器和网络服务器,修改环境变量,都不行的话,选择将服务器安装路径
(E:
\app\taozhi\product\11.2.0\dbhome_1\NETWORK\ADMIN)
下的tnsnames.ora文件拷贝到client客户端对应的文件夹下
(E:
\app\client\product\11.2.0\client_1\network\admin)
拷贝到:
然后你的PLSQL的oracle主目录选择client的目录,然后登陆,问题解决了。
测试连接是否成功,成功执行select*fromemp;接下来做你想做的吧!
(连接身份选择Normal)
网上有许多人说修改tnsnames.ora文件,其实我们在重新配置服务器的时候这些代码都自动的写入到该文件中,所以也要看个人情况而定。
这里我不推荐这种方式。
这样第二个问题也解决了
ORA-12514TNS:
监听进程不能解析描述符和ORA-12541无监听程序
由于这两个问题都是和监听进程有关的,我们就放在一起解决。
客户端的配置可以有以下两种方式:
第一种是使用NetConfigurationAssistant;第二种是使用NetManager;这两个工具在开始菜单都有。
两种方式在内容和形式都是差不多的,下面就以”NetConfigurationAssistant”方式说明一下具体的配置步骤:
2.选择监听程序配置,下一步
3.选择重新配置,下一步
4.选择监听程序,默认,下一步
注:
如果你的监听已启动,则出现提示框,选择是
5.选择协议,使用默认的TCP协议,下一步
6.选择端口号,使用标准端口号1521,下一步
7.不配置另一个监听程序,选择否,下一步
8.监听程序配置完成,下一步
重配服务名,测试连接
1.选择Net服务器配置,下一步
2.选择重新配置,下一步
3.选择数据库名,下一步
4.填写服务名,也就是你创建数据库时的全数据库名,下一步默认的不修改的是orcl
5.选择TCP协议,下一步
6.填写主机名(可填写你的IP地址,也可填写你的主机名xxxx-PC也是可以的),使用标准端口号1521,下一步
7.进行测试,下一步
8.选择更改登录
9.填写用户名和口令,确定这是你自己设置的密码,如果忘记了,就采用我们最先的策略设置新的密码。
10.测试连接成功,下一步
11.网络服务名,默认(和之前的数据库名一样),下一步
12.不配置另一个Net服务名,选择否,下一步
13.Net服务名配置完毕,下一步,完成
启动PL/SQLDeveloper,输入用户名和口令,登录成功
最后点击确定按钮
错误多种多样,不同的问题会导致相同的错误提示,我们多看看问题在哪,耐心点就能解决你的问题。