分类: Oracle
2010-04-01 23:53:44
在Oracle中有两类特殊的权限SYSDBA和SYSOPER,当DBA需要对数据库进行维护管理操作的时候必须具有这两类特殊权限之中的一种。在数据库没有打开的时候,使用数据库内建的账号是无法登陆数据库的,但是拥有SYSDBA或是SYSOPER权限的用户是可以登陆的。认证用户是否拥有两类特殊权限的方法有两种:OS认证和口令文件认证。
2)PFILE(SPFILE)参数文件中的参数REMOTE_LOGIN_PASSWORDFILE设置
3)口令文件orapw$SID(UNIX/Linux) | PWD$SID.ora(Windows)
$ORACLE_HOME/NETWORK/ADMIN/SQLNET.ORA设置:
在SQLNET.ORA(位于$ORACLE_HOME/NETWORK/ADMIN目录中)文件中,对于不同的操作系统SQLNET.AUTHENTICATION_SERVICES的取值会有些不一样。
SQLNET.AUTHENTICATION_SERVICES = (ALL)
对于UNIX系统同时支持OS认证和口令认证
对Windows系统,实际实验是不支持此参数,验证失败
SQLNET.AUTHENTICATION_SERVICES = (NTS)
此设置值仅用于Windows NT系统,此设置同时支持OS认证和口令文件认证,只有在设置了(NTS)值之后运行在Windows系统上的Oracle才支持OS认证。
不设置此参数或SQLNET.AUTHENTICATION_SERVICES =
对unix系统,默认支持OS认证和口令文件认证。
对Windows系统,默认只支持口令文件认证,不支持OS认证。
REMOTE_LOGIN_PASSWORDFILE参数
REMOTE_LOGIN_PASSWORDFILE = NONE:
不使用口令文件
REMOTE_LOGIN_PASSWORDFILE = EXCLUSIVE :
使用口令文件,但只有一个数据库实例可用使用
REMOTE_LOGIN_PASSWORDFILE = SHARE:
多个数据库可以共享一个口令文件,但是只可以识别一个用户:SYS
口令文件
口令文件存放着被授予SYSDBA或SYSOPER权限的用户的用户名和密码。它是一个加密的文件,用户不能修改这个文件,在UNIX系统中口令文件一般保存在$ORACLE_HOME/dbs目录下,文件名为orapw$SID;在Windows系统中口令文件一般保存在$ORACLE_HOME/database目录下,文件名为PWD$SID.ora。
使用orapwd工具生成口令文件
$orapwd file=
如:orapwd file=$ORACLE_HOME/dbs/oraricky password=test