SYSDBA权限的管理

一般对sysdba的管理有两种方式:操作系统认证和密码文件认证

具体选择那一种认证方式取决于:你是想在Oracle运行的机器上维护数据库,还是在一台机器上管理分布于不同机器上的所有的Oracle数据库。若选择在本机维护数据库,则选择操作系统认证可能是一个简单易行的办法;若有好多数据库,想进行集中管理,则可以选择password文件认证方式。

 

使用操作系统认证方式的配置过程:

首先,在安装Oracle之前,建立一个DBA组,这一步不用说了,不然是装不上Oracle的。一般还建立一个名为Oracle的用户,并把它加入到DBA组中。

第二步, 设置REMOTE_LOGIN_PASSWORDNONE。在Oracle8.1以后,该参数默认为EXCLUSIVE。一定要记得改过来。

第三步, 用该用户名登录Unix,运行SQL*Plus 或者SERVER MANAGER,输入以下命令:CONNECT INTERNAL (CONNECT / AS SYSDBA)来登录到Oracle中。

使用PASSWORD文件认证方式的配置过程:

Oracle提供orapwd实用程序来创建password 文件,运用orapwd建立该认证方式的具体步骤如下:

1.    使用Orapwd实用程序来创建一个PASSWORD文件

Orapwd路径:D:\ORACLE\ORA92\BIN\orapwd.exe

使用方法:1、转到Orapwd所在目录。

语法:

    Usage: orapwd file= password= entries=

    Where

        File – name of password file ,

        Password – password for SYS ,

        Entries – maximum number of distinct DBA and OPERs (opt),

    There are no spaces around the equal-to (=) character.

 

      Usage: orapwd file=文件名 password=internal用户密码 entried=entries.

  详细解释:

文件名要包含完整的全路径名,如果不指定,Oracle把它默认放置$ORACLE_HOME/bin

用户密码是用户SYS的密码。当然后来还可以再向里边加入别的超级用户。

  Entries表示最大允许有的超级用户数目。这个是一个可选的。前两者是必须指定的。一般会把它设置的比实际需要大一些,以免不够。

 

2. 把INIT.ORAREMOTE_LOGIN_PASSWORD设置为EXCLUSIVE SHARED.

使用EXCLUSIVE表示只有当前INSTANCE使用这个password文件。而且允许有别的用户作为sysdba登录进系统里边,而若选择了SHARED,则表明不止一个实例使用这个密码文件,伴随着一个很强的约束:sysdba权限只能授予sysinternal这两个用户名。

3. 用SQL*Plus SERVER MANAGER运行下面命令登录进系统:CONNECT INTERNAL/密码。

 

注意点:

  1.当选择密码文件认证方式时,可以再向系统中加入其他超级用户。比如用以下语句把用户SCOTT加入超级用户之中:(由具有sysdba权限的人执行)

  SQL>GRANT SYSDBA TO SCOTT;这样SCOTT用户就具有了sysdba权限。注意,此时SCOTT用户可以以两种身份登录:SCOTT , SYS.SCOTT在登录时没有输入AS SYSDBA时,SCOTT是作为普通用户登录的。而当登录时输入了AS SYSDBA时,此时SCOTT登录进去的用户实际上为sys.

 

2.当前系统中的具有sysdba权限的用户名可以从数据字典视图v$pwfile_user中查询得到:

SELECT * FROM V$PWFILE_USERS;

 

3. 系统中最大的具有sysdba权限的用户数由创建密码文件时的ENTRIES参数决定。当需要创建更多的具有sysdba权限的用户时,就需要删除原有的密码文件,重新创建一个,在entries中输入足够大的数目。再启动Oracle。这时,所有原来被授权的超级用户都不再存在,需要重新授权。所以在重新创建密码文件前,先要查询该视图,记下用户名,再在创建完密码文件后重新授权。

 

   4运行orapwd时,一定要在数据库关闭的情况下,且最好先备份原来的密码文件。在数据库运行时执行orapwd,将不能远程以sysdba登录数据库,因为此时v$pwfile_user中具有sysdba权限的用户的记录已清空。

 

   5。选择password文件认证方式时,如以oracle用户(属于dba组)在数据库所在主机运行connect internalconnect / as sysbda 也不需口令,connect a/a as sysdba 即使用户a不存在也可登录数据库,因为这时还是采用操作系统认证。

 

6 Internal用户密码忘记的处理方法:

  有两种办法:

  1 ALTER USER SYS IDENTIFIED BY 新密码;//这同时也改变了Internal的密码,Oracle8I中通过

  2. 重新创建一个新的密码文件,指定一个新的密码。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12330444/viewspace-448467/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/12330444/viewspace-448467/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值