oracle用户被锁定the account is locked的解决办法

用SQL Plus登录时输入:conn scott/tiger
给出提示:
ERROR:
ORA-28000: the account is locked

解决方法:

解决:
(1)以DBA的身份登录另一个用户,输入:
c:> sqlplus sys/test1234 as sysdba
(2)为scott解锁,输入:
alter user scott account unlock;

给出提示:

用户已更改。

SQL> conn scott/tiger
ERROR:
ORA-28001: the password has expired

更改 scott 的口令
新口令:
(3)输入新的密码.

 

测试、运行程序时,一般使用服务器上的oracle服务,2010年春节后第一天来上班,服务器整体down掉了,所以只好使用本机的oracle服务,是两年装的,连system的密码都不记得了。

 

首先,开启本地的oracle服务,开始-->设置-->按制面板-->管理工具-->服务 按字母“O”很快找到oracle相关的九个服务,OracleOraDb10g_home1TNSListener 服务一般是开着的,因为开发人员一般都要在自己的机子上使用客户端连接远程的数据库服务器,如果大家没有开就开一下吧。OracleServiceORCL 服务,准确的说应该是OracleServiceSID服务,我的SID是的oracle默认的ORCL,所以就是OracleServiceORCL ,也开启,OK了。

 

 

其次,在NET Manager 中配置一个服务命名,记得以前在NET Manager中是会自动配置一个本地的服务命名的,好像是叫LOCAL,但是在oracle 10中没有,应该不会是我两年前删除了!那就自己配置吧,就那么几步,很简单了,到了最后测试,默认使用scott /tiger 进行测试,出现ora-280000 the account is locked 提示,换system /manager 也是ora-280000 the account is locked ,账号也锁定,看来得解决这个问题。

 

解决ora-280000 the account is locked的问题:

 

开始-->运行-->cmd 进行DOS界面

输入:sqlplus.exe / as sysdba;

SQL>alert user scott account unlock;

User altered.

sql>commit;

Commit complete.

SQL>conn scott/tiger

ERROR:

ORA-28001:the password has expired

Change password for scott

New passoword:

Retype new password

Password changed

Connect.

SQL>commit;

Commit complete.

 

这个时候使用scott/新的密码进行net manager测试可以成功,这样就解决了ora-280000 the account is locked的问题

 

当使用同样的方法解决system登录时的ora-280000 the account is locked问题时:出现下面问题

SQL> con system/manager

ERROR:

ORA-01017:invalid username/password ;logon denied

Warning :You are no longer connect to ORACLE.

 

改了密码试了N次,不行,这意味着我忘记了system的密码,呵呵,毕竟两年了。

那下一个问题就是如果system的密码忘了怎么办?

首先,使用上面提到的方法进入sqlplus

SQL> conn /as sysdba

Connect.

SQL> alter user system identified by manager;

User altered.

SQL>commit;

Commit complete.

SQL>conn system/manager;

Connected.

到此这个问题也解决。

 

 

 

其实不管在Net manager中是否配置了本地服务命名,使用SQL plus 都可以连接服务器,只要不写相应的Host String 就可以。

你可能感兴趣的:(oracle)