Oracle 的用户根据所被授予的权限分为系统权限和对象权限。其中最高的权限是sysdba。 Sysdba具有控制Oracle一切行为的特权,诸如创建、启动、关闭、恢复数据库,使数据库归档/非归档,备份表空间等关键性的动作只能通过具有sysdba权限的用户来执行。这些任务即使是普通DBA角色也不行。Sysoper是一个与sysdba相似的权限,只不过比sysdba少了SYSOPER privileges WITH ADMIN OPTION,CREATE DATABASE,RECOVER DATABASE UNTIL这几个权限而已。这两者的认证方式是相同的办法,所以下面只介绍sysdba的认证管理。
一般对sysdba的管理有两种方式: *** 作系统认证和密码文件认证。具体选择那一种认证方式取决于:你是想在Oracle运行的机器上维护数据库,还是在一台机器上管理分布于不同机器上的所有的Oracle数据库。若选择在本机维护数据库,则选择 *** 作系统认证可能是一个简单易行的办法;若有好多数据库,想进行集中管理,则可以选择password文件认证方式。
下图比较直观的说明了这个选择权衡过程:
使用 *** 作系统认证方式的配置过程:
1. 在 *** 作系统中建立一个合法帐户。
具体来说,在NT上,首先建立一个本地用户组,取名为ORA__DBA,其中SID为该数据库实例的SID,或者建立一个ORA_DBA地组,该组不对应于任何一个单独的Oracle实例。这样当一个NT上有好几个Oracle实例时,不用分别管理。然后再NT上建立一个用户,并且把它归入该组中。但是实际上这两步在Oracle8I安装过程中已经自动完成了,一般不用手动进行。
第三步:在sqlnet.ora(位于$ORACLE_HOME/NETWORK/ADMIN目录中)中,把SQLNET.AUTHENTICATION _ SERVICES 设置为SQLNET.AUTHENTICATION_SERVICES= (NTS),意思为使用NT认证方式。
第四步,在INIT.ORA中,把REMOTE_LOGIN_PASSWORD设置为NONE,意思是不用password认证方式。
完成以上步骤后,就可以在登录到NT后,直接在SQL*Plus 和SERVER MANAGER中CONNECT INTERNAL (CONNECT / AS SYSDBA)来作为超级用户登录到Oracle中,执行一些只有超级用户才能进行的 *** 作。
在Unix下,情况有些不同。毕竟这是两个完全不同的 *** 作系统。
首先,在安装Oracle之前,建立一个DBA组,这一步不用说了,不然是装不上Oracle的。一般还建立一个名为Oracle的用户,并把它加入到DBA组中。
第二步, 设置REMOTE_LOGIN_PASSWORD为NONE。在Oracle8.1以后,该参数默认为EXCLUSIVE。一定要记得改过来。
第三步, 用该用户名登录Unix,运行SQL*Plus 或者SERVER MANAGER,输入以下命令:CONNECT INTERNAL (CONNECT / AS SYSDBA)来登录到Oracle中。
使用password文件认证的具体步骤:
Oracle提供orapwd实用程序来创建password 文件,运用orapwd建立该认证方式的具体步骤如下:
1. 使用Orapwd实用程序来创建一个PASSWORD文件。语法:
orapwd file=文件名 password=internal用户密码 entried=entries.
详细解释:
文件名要包含完整的全路径名,如果不指定,Oracle把它默认放置$ORACLE_HOME/dbs(Unix下)或者$ORACLE_HOME/DATABASE(NT下)下。
用户密码是用户internal的密码。当然后来还可以再向里边加入别的超级用户。
Entries表示最大允许有的超级用户数目。这个是一个可选的。前两者是必须指定的。一般会把它设置的比实际需要大一些,以免不够。
2. 把INIT.ORA中REMOTE_LOGIN_PASSWORD设置为EXCLUSIVE 或SHARED.使用EXCLUSIVE表示只有当前INSTANCE使用这个password文件。而且允许有别的用户作为sysdba登录进系统里边,而若选择了SHARED,则表明不止一个实例使用这个密码文件,伴随着一个很强的约束:sysdba权限只能授予sys和internal这两个用户名。(其实internal不是一个实际用户,而只是sys作为sysdba登录时的一个别名。)
同时还要记得把sqlnet.ora文件中SQLNET.AUTHENTICATION _SERVICES设置为NONE。一般在Unix下它是默认设置。在NT下,若选择典型安装时,会使用OS认证,而自定义时会使用密码文件认证方式。在安装过程中会提示输入INTERNAL密码。这样的话,就不用在手工创建密码文件和设定INTERNAL的密码了。
3. 用SQL*Plus 或SERVER MANAGER运行下面命令登录进系统:CONNECT INTERNAL/密码。
sysdba的schema 授权给其他用户 oracle给用户sysdba权限
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
MySQL 给用户添加 ALTER VIEW 的权限
在某些情况下,需要为用户添加特定的权限,例如 ALTER VIEW 权限,以允许他们修改视图。
数据库 MySQL 数据 ALTER VIEW 视图 -
MySQL用户管理与权限管理
MySQL用户管理与权限管理
MySQL MySQL用户管理与权限管理 MySQL用户和权限命令操作 -
mysql 将用户授权给某个IP mysql给其他用户授权
================================©Copyright 蕃薯耀 2021-12-31一、root用户授权 root用户授权,用于指定IP用户登录root用户,方便管理 1、创建指定IP(如:192.168.1.100)远程登录的root用户,并设置密码CREATE USER 'root'@'192.168.1.100' IDENTIFIED BY '密码';2、roo
mysql 将用户授权给某个IP Mysql5.7新增用户并授权 应用程序用户授权 Mysql修改用户密码 Mysql回收撤销用户权限