1)创建密码文件:
[oracle@test dbs]$ orapwd file=orapwtestdb password=admin entries=5
注意:这个file默认的文件名是orapwSID,对于别的文件名是不认的。
同时还须将remote_login_passwordfile的值设成如下:
[oracle@test dbs]$ grep -i remote inittestdb.ora *.remote_login_passwordfile='EXCLUSIVE'
2)先用OS验证的方法连接数据库,并重启数据库才能使密码文件生效。
[oracle@test admin]$ cat sqlnet.ora
# sqlnet.ora Network Configuration File: /u01/app/oracle/oracle/product/10.2.0/db_3/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.
SQLNET.AUTHENTICATION_SERVICES=BEQ ----->这样就可以以本地验证的方式连DB。
NAMES.DIRECTORY_PATH= (TNSNAMES,hostname)
trace_level_client=16
trace_timestamp_client=true
trace_unique_client=true
[oracle@test admin]$ sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on Sun Aug 30 05:12:58 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn testdb as sysdba
Enter password:
Connected.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 167772160 bytes
Fixed Size 1218316 bytes
Variable Size 62916852 bytes
Database Buffers 100663296 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
3)修改sqlnet.ora 改成不使用OS验证。
[oracle@test admin]$ cat sqlnet.ora
# sqlnet.ora Network Configuration File: /u01/app/oracle/oracle/product/10.2.0/db_3/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.
SQLNET.AUTHENTICATION_SERVICES=none
NAMES.DIRECTORY_PATH= (TNSNAMES,hostname)
trace_level_client=16
trace_timestamp_client=true
trace_unique_client=true
4)现在可以用刚才创建的密码来连DB了。
[oracle@test admin]$ sqlplus as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Sun Aug 30 05:21:51 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Enter password:
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> select * from V$PWFILE_USERS;
USERNAME SYSDB SYSOP
------------------------------ ----- -----
SYS TRUE TRUE
SQL> show parameter pass;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
remote_login_passwordfile string EXCLUSIVE
我们用上面的sql还查出了目前有几个用户可以使用密码文件来连DB。
阅读(761) | 评论(0) | 转发(0) |