本人忘性太大,竟然将ORACLE的Sys用户和system用户密码搞忘,而且多次尝试登录system后,造成system被锁定。
经过一番尝试,终于解决。过程如下:
首先,重建sys密码文件。重建方式为:
1、打开cmd命令窗口;
2、执行orapwd命令,其用法为:
C:\WINDOWS\system32>orapwd Usage: orapwd file=<fname> entries=<users> force=<y/n> ignorecase=<y/n> nosysdba=<y/n>
where file - name of password file (required), password - password for SYS will be prompted if not specified at command line, entries - maximum number of distinct DBA (optional), force - whether to overwrite existing file (optional), ignorecase - passwords are case-insensitive (optional), nosysdba - whether to shut out the SYSDBA logon (optional Database Vault only). |
file选项为文件全路径,文件名为PWD+数据库实例名+“.ora”。password为新设置的密码。
我执行的命令格式如下:
C:\WINDOWS\system32>orapwd file=D:\Oracle\product\11.2.0\dbhome_1\database\PWD****.ora password=****** entries=5 force=y |
(注意,执行重建密码文件命令之前,最好将原来的文件备份一下)
执行命令后,新的密码文件会覆盖原有的密码文件。
重启ORACLE数据库服务后,就可以用新的密码登录SYS了。
下一步解决system用户锁定问题。
在CMD命令窗口中,用sqlplus连接数据库。
C:\Documents and Settings\Administrator>sqlplus sys/***** as sysdba |
其中**部分为登录密码。
然后执行命令,将system解锁。
SQL>alter user system account unlock; |
最后修改system用户的密码。
SQL>alter user system identified by **********; |
其中***部分为新的密码。
至此system已被解锁且可采用新的密码登录。
原文链接:http://www.lhtry.net/Blog/Detail?id=19