PasswordFile 口令文件
位置:$ORACLE_HOME/dbs/orapw<ORACLE_SID>
cd $ORACLE_HOME/dbs[oracle@RHEL6 dbs]$ ll total 24 -rw-rw----. 1 oracle oinstall 1544 Apr 22 02:47 hc_DBUA0.dat -rw-rw----. 1 oracle asmadmin 1544 May 2 04:50 hc_sundb.dat -rw-r--r--. 1 oracle oinstall 2851 May 15 2009 init.ora -rw-r-----. 1 oracle oinstall 37 Apr 22 03:41 initsundb.ora -rw-r-----. 1 oracle asmadmin 24 Apr 22 03:38 lkSUNDB -rw-r-----. 1 oracle oinstall 1536 May 2 05:11 orapworcl这里如果口令文件被改名,sys用户是无法正常登录的
cd $ORACLE_HOME/dbsmv orapwsundb orapwsundb_baksqlplus sys/dba as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on Wed May 2 05:58:03 2018 Copyright (c) 1982, 2009, Oracle. All rights reserved. ERROR: ORA-01031: insufficient privileges修改口令文件名后发现登录报错
在数据库中查看口令文件保存的口令对象是谁
select * from v$pwfile_users;USERNAME SYSDB SYSOP SYSAS ------------------------------ ----- ----- ----- SYS TRUE TRUE FALSE Elapsed: 00:00:00.01可以通过用户授权增加口令文件用户条目
grant sysdba to hr;select * from v$pwfile_users;USERNAME SYSDB SYSOP SYSAS ------------------------------ ----- ----- ----- SYS TRUE TRUE FALSE HR TRUE FALSE FALSE Elapsed: 00:00:00.00conn hr/hr as sysdbaConnected.revoke sysdba from hr;如果口令文件损坏
file orapwsundborapworcl: data模拟口令文件损坏,可以用Oracle默认程序重建
mv orapwsundb orapwsundb_bakorapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=dba force=y如果将系统审核打开后,用口令审核方式登录时无效的
gpasswd -a oracle dbaAdding user oracle to group dbasu - oraclesqlplus fafafafafaf/afafafafafafafafaf as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on Wed May 2 06:14:18 2018 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, Automatic Storage Management, OLAP, Data Mining and Real Application Testing options发现依然可以登录,Oracle数据库在系统认证打开的情况下,连接命令中的用户名和密码将不会被验证,口令文件不会被使用,只要后面跟 as sysdba,登录的用户都是sys。