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安装过程中已经自动完成了,一般不用手动进行。

字串5

第三步:在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建立该认证方式的具体步骤如下:

字串3

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的密码了。

字串5

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

注重:

1.在Oracle8.1.6安装在WIN2000下创建数据库时,经常会发生凭证检索失败的错误。这是由于Oracle不能应用OS认证的结果。一般可以通过修改sqlnet.ora中SQLNET.AUTHENTICATION _SERVICES为NONE来解决。这时,Oracle将采用密码文件认证方式。

2.由于Oracle有几个系统预建的用户,所以最好在安装完成以后马上改变这些用户的密码。系统默认得密码分别为:internal/oracle , sys/change_on_install, system/manager.

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

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

4. 当前系统中的具有sysdba权限的用户名可以从数据字典视图v$pwfile_user中查询得到: SELECT * FROM V$PWFILE_USERS; 如上图所示。

字串5

5. 系统中最大的具有sysdba权限的用户数由创建密码文件时的ENTRIES参数决定。当需要创建更多的具有sysdba权限的用户时,就需要删除原有的密码文件,重新创建一个。这需要关闭数据库,删除密码文件,重新创建一个新的密码文件,在entries中输入足够大的数目。再启动Oracle。这时,所有原来北授权的超级用户都不再存在,需要重新授权。所以在重新创建密码文件前,先要查询该视图,记下用户名,再在创建完密码文件后重新授权。    6. Internal用户密码忘记的处理方法:  有两种办法:  1. ALTER USER SYS IDENTIFIED BY 新密码;//这同时也改变了Internal的密码,在Oracle8I中通过  2. 重新创建一个新的密码文件,指定一个新的密码。

oracle里的超级用户,Oracle中超级用户权限的管理相关推荐

  1. 首席新媒体黎想教程:浅谈用户运营中的用户分层

    其实是一种类似于价格歧视的策略,针对不同的用户采取不同的策略,最终达到提升用户价值,提升用户ARPU值的作用. 这也就是为什么在不同的手机和账号下看到的商品价格是不一样的原因,大数据杀熟就是这么来的! ...

  2. oracle里面的锁,基于oracle中锁的深入理解

    ORACLE里锁有以下几种模式:0:none 1:null 空 2:Row-S 行共享(RS):共享表锁 3:Row-X 行专用(RX):用于行的修改 4:Share 共享锁(S):阻止其他DML操作 ...

  3. oracle里的ols机制,Oracle DV和OLS以及VPD的区别(转)

    Database Vault概述 对于现在数据的权限和安全管理有一个基本的原则就是分离权责,即IT系统的超级用户不应该同时又是应用系统的超级用户,但是传统的数据库体系结构却并不支 持这样的分离,因为D ...

  4. php里注册管理员账号,WordPress中创建用户角色的相关PHP函数使用详解

    这篇文章主要介绍了WordPress中创建用户角色的相关函数使用,在WordPress的多用户模式中不同角色拥有不同的权限,需要的朋友可以参考下 WordPress 默认有 "订阅者&quo ...

  5. linux php运行用户,Linux中普通用户如何以root身份运行命令

    Linux遵循非常艰难的权限模型,root用户可以执行任何操作:但普通用户没有权限,无法运行任何命令.下面本篇文章就来给大家介绍普通用户以root身份运行命令的方法,希望对大家有所帮助. 方法一:使用 ...

  6. linux退出guest用户_linux中guest 用户就是nobody吗?

    你的位置: 问答吧 -> Linux -> 问题详情 linux中guest 用户就是nobody吗? RT,谢谢 作者: ysrzzk 发布时间: 2009-05-17 [root@no ...

  7. 使用公用计算机的用户如何,如何通过设置权限来管理公用电脑?

    如何通过设置权限来管理公用电脑?本文将跟大家分享个学校的实例操作:由于学校师资紧张,笔者在担任网络管理员的同时还管理着文印室的办公电脑.由于平时工作比较忙,对文印室的办公电脑管理很松散,因此老师们可以 ...

  8. Oracle里default什么意思,ORACLE中默认值default的使用方法.doc

    ORACLE中默认值default的使用方法 在创建数据库表时,你可以指定一个 DEFAULT 值(即默认值).对数据库字段使用默认值有助于将数据库设计问题与应用程序代码隔离. 可以在以后某个时候通过 ...

  9. oracle里查询表的语句,Oracle查询用户所有表的语句

    下面为您介绍的语句用于实现Oracle查询用户所有表,如果您对oracle查询方面感兴趣的话,不妨一看.select * from all_tab_commen 下面为您介绍的语句用于实现Oracle ...

  10. oracle里面子判断,在过程中添加子进程,在子过程中判断

    在过程中添加子过程,在子过程中判断 本帖最后由 wu_xiao_xian 于 2014-10-28 15:23:03 编辑 现在有一个过程BI_OSS_SHOULD_CALL_P DROP PROCE ...

最新文章

  1. 端口转发与代理工具 内网代理 内网反弹代理
  2. 盗取cookie终极代码
  3. IIC总线的操作时序
  4. 源码分析Dubbo服务消费端启动流程
  5. 墨迹天气回应IPO失败:不会因一次失利而止步
  6. virus.win32.xorer病毒
  7. Kubernetes 之资源管理
  8. Head First 设计模式目录
  9. 20145231熊梓宏 《网络对抗》 实验6 信息搜集与漏洞扫描
  10. R语言空间权重矩阵columbus及画图
  11. python生成Androd deviceid
  12. zotero+坚果云安装记录
  13. FFMPEG之音频播放
  14. 2017计算机一级教学进度表,2016--2017年度第二学期16职高一年级《计算机应用基础》教学进度表...
  15. 在线将html文件转pdf,在线将html转换成pdf文件 示例源码
  16. 维视智造斩获2022年度光能杯最具影响力“智造”企业奖
  17. GitHub 值得收藏的前端项目
  18. Nmap 基本使用方法
  19. 计算机软件知识产权包括,计算机软件分类有几类?【IPCOO软件著作权中心】
  20. 黑马程序员01_String

热门文章

  1. 计算机学院运动会方阵策划案,运动会方阵策划案(图文)教学文案
  2. 微生物组-宏基因组分析专题研讨会(2022.4,线下)
  3. 信号与系统 第二章 卷积总结 δ函数
  4. 基于javaweb的在线客服系统
  5. 编程中的燕尾槽刀具该如何加工设置
  6. 电能管理系统功能界面展示—安科瑞 孙斌
  7. Acrel-3000电能管理系统在成都河畔新世界项目的应用
  8. [论文阅读]中文版 - deep learning
  9. .net怎么使用NPOI把word转为pdf多提供几个代码示例
  10. 寻找湖北荆州刘氏族谱