Chinaunix首页 | 论坛 | 博客
  • 博客访问: 336756
  • 博文数量: 76
  • 博客积分: 8291
  • 博客等级: 中将
  • 技术积分: 1540
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-22 10:13
文章分类

全部博文(76)

文章存档

2009年(1)

2008年(75)

我的朋友

分类: Java

2008-05-08 18:20:12

在使用Oracle过各中经常会遇到密码丢失的时候,本文用两种试来解决这个问题。

一种方法:

sqlplus "/ as sysdba"
SQL>startup
SQL>alter user system identified by root123;

如果sqlplus "/ as sysdba"不能进入,让输入密码,我输入原始密码和修改的密码后都不行的话,修改unix环境下:

1. $ORACLE_HOME\network\admin\SQLNET.ORA中为:

SQLNET.AUTHENTICATION_SERVICES=(NTS)

重起数据库/监听服务,就可以用操作系统认证sqlplus "/ as sysdba"了,来进入你的数据库,从而轻而易举的搞定你的数据库了。

2.

sqlplus /nolog 
sql>connect /as sysdba

第二种方法:

详细步骤如下:

一:查询视图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_passsword AS SYSDBA;

启动数据库实例并打开数据库; 创建相应用户帐号,对其授权授予 权限:GRANT SYSDBA TO user_name(如果先前数据库只有sys具有sysdba权限,可不做这步)。

六:修改密码文件状态,默认密码文件的状态shared,要将初始化参数里的REMOTE_LOGIN_PASSWORDFILE 设置成EXCLUSIVE。(T006)

相关文章:


阅读(465) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~