共计 2030 个字符,预计需要花费 6 分钟才能阅读完成。
本篇内容主要讲解“怎么理解 Oracl 中的 Remote_login_passwordfile 参数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让丸趣 TV 小编来带大家学习“怎么理解 Oracl 中的 Remote_login_passwordfile 参数”吧!
口令文件用于具有 sysdba 身份的用户执行远程登录数据库,Oracle 允许用户通过口令文件验证,在数据库未启动之前登录,从而启动实例,加载打开数据库;Oracle 通过一个初始化参数 remote_login_passwordfile 限制口令文件的使用,通过配置该参数可以控制是否在多个数据之间共享密码文件,也可以通过这个参数禁用口令文件验证,remote_login_passwordfile 的值:
== NONE:禁用口令文件验证。
1. 设置成 none 将直接禁用口令文件验证,sysdba 用户只能通过操作系统认证登录数据库。此时的登录将会收到报错:
ORA-01017: invalid username/password; logon denied
2. 操作系统认证方式涉及 sqlnet.ora 文件中的 SQLNET.AUTHENTICATION_SERVICES 参数值:
1)NONE : 关闭操作系统认证,只能通过口令文件认证
2)ALL:linux/unix 平台下,采用操作系统认证,但远程 sysdba 登录还需使用口令文件认证。
3)NTS:windows 平台下操作系统认证
== 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:在多个数据库间共享口令文件。
1. 配置 shared 值的口令文件可以被一台服务器上的多个数据库或者 RAC 集群数据库共享;(现在知道 exclusive 模式时说的“only one instance of one database“的含义了吧,就是为了区分 RAC 环境)
2.shared 下的密码文件不可被修改,这就意味着无法再授权 sysdba 权限给非 sys 用户了,修改 sysdba 权限用户的密码也不被允许,包括 sys 用户的密码。
SQL show parameter
password
NAME TYPE VALUE
———————————— ———– ——————————
remote_login_passwordfile string SHARED
SQL
grant sysdba
to hr;
grant sysdba
to hr
*
ERROR
at line 1:
ORA-01999:
password file cannot be updated
in SHARED mode
SYS@db11g alter user sys identified
by netpwd ;
alter user sys identified
by netpwd
*
ERROR
at line 1:
ORA-28046:
Password change
for SYS disallowed
3.oracle 建议首先将需要 sysdba 权限的用户在 exclusive 模式下设置好在将 REMOTE_LOGIN_PASSWORDFILE 修改为 shared 共享口令文件。
4.Oracle 寻找口令文件的顺序:orapw$ORACLE_SID — orapw — Failure
【示例】Exclusive 转变为 shared:
1. 修改口令文件名
$ mv orapwdb11g orapw
2. 修改数据库 remote_login_passwordfile 值
SQL alter system set remote_login_passwordfile=shared scope=spfile;
3. 重启数据库生效
SQL shutdown immediate;
SQL startup;
备注:如果将 none 的口令文件转换为 exclusive 或 shared,要保证口令文件中的 sys 密码设置和数据库中数据字典中记载的一致。
到此,相信大家对“怎么理解 Oracl 中的 Remote_login_passwordfile 参数”有了更深的了解,不妨来实际操作一番吧!这里是丸趣 TV 网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!