Oracle管理员认证方式

Oracle管理员认证方式,第1张

概述<br />数据库管理员DBA通常执行一些特殊 *** 作,如打开与关闭数据库。这些管理 *** 作需要通过两个特殊的系统权限执行:SYSDBA和SYSOPER。<br />以SYSDBA或SYSOPER权限连接时,连接的是一个默认模式,而不是与当前用户的模式。对于SYSDBA,模式为SYS;对

数据库管理员DBA通常执行一些特殊 *** 作,如打开与关闭数据库。这些管理 *** 作需要通过两个特殊的系统权限执行:SYSDBA和SYSOPER。

以SYSDBA或SYSOPER权限连接时,连接的是一个默认模式,而不是与当前用户的模式。对于SYSDBA,模式为SYS;对于SYSOPER,模式为PUBliC。

sql> conn scott/tiger as sysdba;

Connected.

sql> show user

USER is "SYS"

数据管理员认证方式有两种:

l         *** 作系统OS认证l         口令文件认证

                    

 

执行远程数据库管理,需要注意大多数流行的连接协议,如TCP/IP和DECnet,是不安全的。因此需要使用口令文件认证。

1、 *** 作系统OS认证

首先,需要一个 *** 作系统用户,属于OSDBA或OSOPER组。在windows下,组名称分别为ORA_DBA和ORA_OPER,在“计算机管理”下的“本地用户和组”中可以看到;在Unix下,组名称分别为dba和oper。

设置文件sqlnet.ora。默认位置为%ORACLE_HOME%/network/admin (windows),$ORACLE_HOME/network/admin (Unix)。

sqlNET.AUTHENTICATION_SERVICES= (NTS) (windows)

sqlNET.AUTHENTICATION_SERVICES= (ALL) (Unix)

设置初始化参数:REMOTE_LOGIN_PASSWORDfile=NONE。

可以根据SPfile生成文本参数文件,然后修改文本文件,再生成SPfile。

sql> create pfile from spfile;

编辑文本参数文件。关闭数据库。

sql> shutdown immediate;

sql> create spfile from pfile;

sql> startup;

测试,不需要密码即可登陆。

sql> conn / as sysdba;

sql> conn sys/whatever as sysdba;  //随便什么口令,不输入也可以

注:此时远程连接不能使用OS认证,但我在VMWARE中创建的两个windows Server2003却可以远程连接。

sql> conn /@primary as sysdba

Connected.

其中primary为连接字符串。

使用另一台物理机连接时(TCP/IP),出现以下错误:

sql> conn /@primary as sysdba

ERROR:

ORA-01031:insuffIEnt privileges

此时,远程管理需要使用口令文件。

2、口令文件认证

首先,使用ORAPWD工具创建口令文件。

orapwd file=’C:/oracle/product/10.1.0/Db_1/database’ password=oracle entrIEs=20

设置初始化参数:REMOTE_LOGIN_PASSWORDfile=EXCLUSIVE。方法参见前文。

将超级用户权限SYSDBA和SYSOPER授予其他用户。

sql> grant sysdba to scott;

sql> select * from v$pwfile_users;

USERname                       SYSDB SYSOP                                      

------------------------------              -----    -----                                     

SYS                              TRUE  TRUE                                      

SCott                           TRUE  FALSE                                      

为了测试效果,可以先禁用 *** 作系统认证方式。编辑sqlnet.ora文件:

sqlNET.AUTHENTICATION_SERVICES= (NONE)

测试,本地连接方式:

sql> conn sys/whatever as sysdba  // *** 作系统认证方式被禁用

ERROR:

ORA-01017: invalID username/password; logon denIEd

Warning: You are no longer connected to ORACLE.

 

sql> conn sys/oracle as sysdba  //口令文件认证

Connected.

 

sql> conn scott/tiger as sysdba;  //注意登录用户为SYS

Connected.

sql> show user

USER is "SYS"

测试,远程连接方式:

sql> conn sys/oracle@primary as sysdba

Connected.

 

sql> conn scott/tiger@primary as sysdba

Connected.

sql> show user

USER is "SYS"

 

sql> conn scott/tiger@primary  //以scott登录

Connected.

sql> show user

USER is "SCott"

总结

以上是内存溢出为你收集整理的Oracle管理员认证方式全部内容,希望文章能够帮你解决Oracle管理员认证方式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1153797.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存