Oracle数据库的sysdba权限登录问题总结

来源:互联网 发布:淘宝确认订单页面 编辑:程序博客网 时间:2024/04/30 19:15

Oracle数据库的sysdba权限登录问题  数据库用sysdba登录的验证有两种方式,一种是通过os认证,一种是通过密码文件验证;登录方式有两种,一种是在数据库主机直接登录(用os认证的方式),一种是通过网络远程登录;

需要设置的参数有两个,一个是SQLNET.AUTHENTICATION_SERVICES,一个是REMOTE_LOGIN_PASSWORDFILE。


os认证:假如启用了os认证,以sysdba登录,那么只需要使用oracle软件的安装用户就能登录:sqlplus “/ as sysdba”。如果我们要禁用os认证,只利用密码文件登录,我们首先要有一个密码文件:

D:/oracle/ora92/database>orapwd file=PWDoralocal.ora password=mypassword entries=10;

D:/oracle/ora92/database>

然后我们要把$ORACLE_HOME/network/admin/sqlnet.ora中设置:


SQLNET.AUTHENTICATION_SERVICES= none

 

大家需要注意,密码文件只在数据库启动的时候加载进去,一旦加载进去,密码文件就脱离了oracle管理,所以在你使用orapwd新建密码文件后,里面指定的密码需要在数据重启后才能发生作用:


(1)REMOTE_LOGIN_PASSWORDFILE=none且SQLNET.AUTHENTICATION_SERVICES= none:

oracle安装用户本地sqlplus “/ as sysdba”无法登录

非oracle安装用户本机sqlplus “sys/change_on_install as sysdba”无法登录

非oracle安装用户远程sqlplus “/ as sysdba_on_install@sid as sysdba”无法登录


(2)REMOTE_LOGIN_PASSWORDFILE=exclusive且SQLNET.AUTHENTICATION_SERVICES= none:

oracle安装用户本地sqlplus “/ as sysdba”无法登录

非oracle安装用户本机sqlplus “sys/change_on_install as sysdba”能登录

非oracle安装用户远程sqlplus “/ as sysdba_on_install@sid as sysdba”能登录


(3)REMOTE_LOGIN_PASSWORDFILE=none且SQLNET.AUTHENTICATION_SERVICES= (NTS):

oracle安装用户本地sqlplus “/ as sysdba”能登录

非oracle安装用户本机sqlplus “sys/change_on_install as sysdba”无法登录

非oracle安装用户远程sqlplus “/ as sysdba_on_install@sid as sysdba”无法登录


(4)REMOTE_LOGIN_PASSWORDFILE=exclusive且SQLNET.AUTHENTICATION_SERVICES= (NTS):

oracle安装用户本地sqlplus “/ as sysdba”能登录

非oracle安装用户本机sqlplus “sys/change_on_install as sysdba”能登录

非oracle安装用户远程sqlplus “/ as sysdba_on_install@sid as sysdba”能登录

原创粉丝点击