orapwd是oracle提供的创建口令文件的命令,如果口令文件不见了可以用这个命令重新创建。
下面是orapwd命令的一些解释。
D:\oracle\ora92\database>orapwd
Usage: orapwd file=
password= entries=
where
file - name of password file (mand),
password - password for SYS (mand),
entries - maximum number of distinct DBA and OPERs (opt),
There are no spaces around the equal-to (=) character.
例如:D:\oracle\ora92\database>orapwd file=pwdcjh.ora password=cjh entries=2
其中参数entries的含义是表示口令文件中可以存放的最大用户数,对应于允许以SYSDBA/SYSOPER权限登录数据库的最大用户数,如果用户数超过这个值只能重建口令文件,增大entries。
file后面可以指定口令文件的全路径和文件名,否则创建在当前目录下。
windows下oracle默认的位置是ora92/database目录,默认的文件名是pwdSID.ora,不认别的文件名。
linux下oracle默认的位置是$ORACLE_HOME/dbs目录,默认的文件名是orapwSID,不认别的文件名。
创建完后,数据库需要重启动,新的口令文件才能生效。
但是这个口令文件对于非操作系统认证例如网络连接的方式才有用。对于在本机登录,因为采用了操作系统认证,不管用什么口令都可以登录,实际上口令没起任何作用。如果在本机登陆不采用操作系统认证,把ora92/network/admin下的sqlnet.ora中的
SQLNET.AUTHENTICATION_SERVICES= (NTS)
改为
SQLNET.AUTHENTICATION_SERVICES= (NONE)
然后用
D:\oracle\ora92\database>sqlplus "sys/cjh@cjh as sysdba"
就可以登陆了。
口令文件的使用方式还受另外一个初始化参数控制:
SQL> show parameter pass
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------ remote_login_passwordfile string EXCLUSIVE
阅读(2220) | 评论(0) | 转发(0) |