REMOTE_LOGIN_PASSWORDFILE


  口令文件用于具有sysdba身份的用户执行远程登录数据库,Oracle允许用户通过口令文件验证,在数据库未启动之前登录,从而启动实例,加载打开数据库;Oracle通过一个初始化参数remote_login_passwordfile限制口令文件的使用,通过配置该参数可以控制是否在多个数据之间共享密码文件,也可以通过这个参数禁用口令文件验证,remote_login_passwordfile的值:

NONE

NONE:禁用口令文件验证。
  1. 设置成none将直接禁用口令文件验证,sysdba用户只能通过操作系统认证登录数据库。此时的登录将会收到报错:
    ORA-01017: invalid username/password; logon denied
  2. 操作系统认证方式涉及sqlnet.ora 文件中的SQLNET.AUTHENTICATION_SERVICES参数值:
    • NONE :关闭操作系统认证,只能通过口令文件认证
    • ALL:linux/unix平台下,采用操作系统认证,但远程sysdba登录还需使用口令文件认证。
    • NTS:windows平台下操作系统认证

EXCLUSIVE

EXCLUSIVE:(默认值)独占模式使用密码文件,官档中提到了“only one instance of one database”使用exclusive方式,在数据库中是可以执行对于sysdba用户的增加,修改,删除动作的,同样也可以修改sysdba用户的密码,这些更改会记录到密码文件中去。
  1. 查看被授予sysdba权限的用户
    SELECT USERNAME FROM V$PWFILE_USERS WHERE SYSDBA='TRUE';
  2. 口令文件中添加/删除sysdba权限用户
    REVOKE SYSDBA FROM non-SYS-user;
    GRANT SYSDBA TO non-SYS-user;

SHARED

SHARED:在多个数据库间共享口令文件。
  1. 配置shared值的口令文件可以被一台服务器上的多个数据库或者RAC集群数据库共享;(现在知道exclusive模式时说的“only one instance of one database“的含义了吧,就是为了区分RAC环境)
  2. shared下的密码文件不可被修改,这就意味着无法再授权sysdba权限给非sys用户了,修改sysdba权限用户的密码也不被允许,包括sys用户的密码。
  3. oracle建议首先将需要sysdba权限的用户在exclusive模式下设置好在将REMOTE_LOGIN_PASSWORDFILE 修改为shared共享口令文件。
  4. Oracle寻找口令文件的顺序:orapw$ORACLE_SID --> orapw --> Failure
备注:如果将none的口令文件转换为exclusive或shared,要保证口令文件中的sys密码设置和数据库中数据字典中记载的一致。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值