Oracle密码丢失,应该如何解决?下面提供了两种方法,供读者参考。由于Oracle的版本不同,文中所述方法也可能有遗漏之处。
Oracle密码丢失解决方法1:
sqlplus"/assysdba"SQL>startup SQL>alterusersystemidentifiedbyroot123;
如果sqlplus “/ as sysdba”不能进入,让输入密码,我输入原始密码和修改的密码后都不行的话,修改unix环境下:
1. $ORACLE_HOME\network\admin\SQLNET.ORA中为:
SQLNET.AUTHENTICATION_SERVICES=(NTS)
重起数据库/监听服务,就可以用操作系统认证sqlplus “/ as sysdba”了,来进入你的数据库,从而轻而易举的搞定你的数据库了。
2.
sqlplus/nolog sql>connect/assysdba
Oracle密码丢失解决方法2:
一:查询视图V$PWFILE_USERS:select * from V$PWFILE_USERS;记录下拥有 SYSOPER/SYSDBA系统权限的用户信息。
二:关闭数据库 shutdown immediate。
三:删除密码文件,文件路径一般为:ORACLE_HOME\DATABASE,文件名为PWD.ORA。
四:创建密码文件:
ORAPWD FILE=<FILENAME> PASSWORD=<PASSWORD>
五:向密码文件中增加用户:
CONNECT SYS/internal_user_passswordAS SYSDBA;
启动数据库实例并打开数据库; 创建相应用户帐号,对其授权授予 权限:GRANT SYSDBA TO user_name(如果先前数据库只有sys具有sysdba权限,可不做这步)。
六:修改密码文件状态,默认密码文件的状态shared,要将初始化参数里的REMOTE_LOGIN_PASSWORDFILE 设置成EXCLUSIVE。
【编辑推荐】
- Oracle用户权限及角色管理浅谈 Oracle用户权限的创建及分配Oracle默认用户名与密码速查表在命令行下进行Oracle用户解锁五种Oracle用户的授权与管理