`
jiang5495
  • 浏览: 92967 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

normal、sysdba、sysoper登陆oracle的区别理解(转载)

阅读更多
sys和system用户的区别
【system】用户只能用normal身份登陆em。
【sys】用户具有“SYSDBA”或者“SYSOPER”权限,登陆em也只能用这两个身份,不能用normal。
“SYSOPER”权限,即数据库操作员权限,权限包括:
打开数据库服务器   关闭数据库服务器
备份数据库       恢复数据库
日志归档         会话限制
“SYSDBA”权限,即数据库管理员权限,权限包括:
打开数据库服务器   关闭数据库服务器
备份数据库       恢复数据库
日志归档       会话限制
管理功能       创建数据库


normal 、sysdba、 sysoper有什么区别
normal 是普通用户
另外两个,你考察他们所具有的权限就知道了
sysdba拥有最高的系统权限
sysoper主要用来启动、关闭数据库,sysoper 登陆后用户是 public
sysdba登陆后是 sys

SQL> conn / as sysdba
已连接。
SQL> grant sysoper to test;

授权成功。

SQL> conn test/test as sysoper;
已连接。
SQL> show user
USER 为"PUBLIC"
SQL> conn test/test as sysdba
已连接。
SQL> show user
USER 为"SYS"
SQL>

dba和sysdba的区别
dba、sysdba这两个系统角色有什么区别呢
在说明这一点之前我需要说一下oracle服务的创建过程
·创建实例
·启动实例
·创建数据库(system表空间是必须的)
启动过程
·实例启动
·装载数据库
·打开数据库

sysdba,是管理oracle实例的,它的存在不依赖于整个数据库完全启动,
只要实例启动了,他就已经存在,以sysdba身份登陆,装载数据库、打开数据库
只有数据库打开了,或者说整个数据库完全启动后,dba角色才有了存在的基础!



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/VBEND/archive/2009/02/18/3904086.aspx





///////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////

看见Csdn的Oracle技术版块有人提出关于dba和sysdba的一些困惑,这里详细的介绍一下两者的区别。

dba是Oracle里的一种对象,Role 和User一样,是实实在在存在在Oracle里的物理对象,而sysdba是指的一种概念上的操作对象,在Oracle数据里并不存在。

所以说这两个概念是完全不同的。dba是一种role对应的是对Oracle实例里对象的操作权限的集合,而sysdba是概念上的role是一种登录认证时的身份标识而已。

下面我们通过详细的实例来看看他们的区别

1.
物理上的role dba 是可以在数据字典里查到的
SQL> select * from dba_roles where upper(role) = ‘DBA’;

ROLE                          PASSWORD
—————————— ——–
DBA                            NO

而sysdba是概念上的role在数据字典里是查不到的

SQL> select * from dba_roles where upper(role) = ‘SYSDBA’;
no rows selected

2.
grant dba 和grant sysdba的差别
dba是正真的role,所以grant后在dba_role_privs里有记录,而revoke后就没有了

SQL>  grant dba to testuser;
SQL> select * from dba_role_privs where grantee = ‘TESTUSER’;
GRANTEE                        GRANTED_ROLE                  ADM DEF
—————————— —————————— — —
TESTUSER                      RESOURCE                      NO  YES
TESTUSER                      CONNECT                        NO  YES
TESTUSER                      DBA                            NO  YES
SQL>  revoke dba from testuser;
SQL> select * from dba_role_privs where grantee = ‘TESTUSER’;
GRANTEE                        GRANTED_ROLE                  ADM DEF
—————————— —————————— — —
TESTUSER                      RESOURCE                      NO  YES
TESTUSER                      CONNECT                        NO  YES

对于sysdba是不会出现这个情况的,因为他不是正真的role
SQL> grant sysdba to testuser;
SQL> select * from dba_role_privs where grantee = ‘TESTUSER’;
GRANTEE                        GRANTED_ROLE                  ADM DEF
—————————— —————————— — —
TESTUSER                      RESOURCE                      NO  YES
TESTUSER                      CONNECT                        NO  YES

那么这个是sysdba是这么记录的叻,
我在一个文章和帖子里对对sysdba的登录有过详细的叙述
对了,sysdba是登录时候需要的他是和remote_login_passwordfile关联的
我们可以查询v$pwfile_users;
如下:
SQL> select * from v$pwfile_users;
USERNAME                      SYSDB SYSOP
—————————— —– —–
SYS                            TRUE  TRUE
SYSTEM                        TRUE  FALSE
TESTUSER                      TRUE  FALSE
当你grant sysdba后,在这里就多了一条
下面我们revoke一下,再来看
SQL> revoke sysdba from testuser;
SQL> select * from v$pwfile_users;
USERNAME                      SYSDB SYSOP
—————————— —– —–
SYS                            TRUE  TRUE
SYSTEM                        TRUE  FALSE

没有叻。

所以在这里dba和sysdba是根本不同概念了


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/inthirties/archive/2009/05/09/4159489.aspx
分享到:
评论

相关推荐

    Sys和system用户、sysdba 和sysoper系统权限、dba角色的区别

    Oracle 数据库中,`sys` 和 `system` 是两个非常重要的内置用户,它们拥有不同的权限和功能。`sys` 用户是Oracle数据库权限最高的用户,它维护所有数据字典的基表...理解这些概念有助于更安全有效地管理Oracle数据库。

    oracle sysdba 密码解释

    本文将深入探讨Oracle中`SYSDBA`密码的工作原理、配置方法及故障排除技巧,帮助读者更好地理解和掌握这一核心概念。 #### 一、Sysdba权限概述 在Oracle数据库中,`SYSDBA`是一种特殊的权限,允许用户以系统管理员...

    sys用户与system用户.txt

    【 system 】用户只能用 normal 身份登陆 em ,除非你对它授予了 sysdba 的系统权限(grant sysdba to system)或者 sysoper 系统权限。 【 sys 】用户具有 “SYSDBA” 或者 “SYSOPER” 系统权限,登陆 em 也只能用...

    Oracle_sys和system用户的区别

    标题与描述概述的知识点主要集中在Oracle数据库中两个特殊用户的区别:sys与system用户,以及与之相关的系统权限sysdba和sysoper的区别。接下来,我们将深入探讨这些知识点。 ### Oracle_sys和system用户的区别 ##...

    Oracle中sys,system,scott,hr用户的区别.pdf

    SYS 用户是 Oracle 数据库中的最高权限用户,它拥有 DBA(Database Administrator)角色,包括 SYSDBA 和 SYSOPER 系统权限。这些权限允许 SYS 用户执行数据库的高级管理和维护任务,如启动、关闭数据库、创建和...

    Oracle命令

    | sys | change_on_install | SYSDBA/SYSOPER | 不能以 NORMAL 登录,可作为默认的系统管理员 | | system | manager | SYSDBA/NORMAL | 不能以 SYSOPER 登录 | | sysman | oem_temp | | sysman 为 oms 的用户名 |...

    oracle教程全课件

    在Oracle管理系统中,有不同类型的用户,如SYSDBA(系统管理员)、SYSOPER(操作员)和NORMAL(普通用户)。SYSTEM用户默认拥有SYSDBA权限,可以执行高级数据库管理任务,如打开/关闭数据库、备份/恢复、日志归档等...

    Oracle默认用户名与密码速查表.doc

    这些建立了不同的登录身份和权限,例如SYSDBA、SYSOPER、NORMAL 等。 sys 用户是 Oracle 数据库的系统管理员,拥有最高的权限。 system 用户是默认的系统管理员,不能以 SYSOPER 登录。sysman 用户是 Oracle ...

    oracle登录登录方式

    对于SYS用户,需要选择登录角色,通常是`sysdba`(数据库管理员)或`sysoper`(操作系统管理员)。其他用户一般选择`normal`角色。 Oracle服务器的核心组成部分包括Oracle数据库和Oracle实例。实例由系统全局区...

    oracle用户区分

    `SYSDBA`和`SYSOPER`是两种系统权限,它们属于Oracle的“administrative privilege”。`SYSDBA`权限允许执行所有数据库管理和维护任务,包括创建和删除数据库、启动和关闭数据库、更改数据库参数等。而`SYSOPER`权限...

    oracle 安装宝典

    - **sys/change_on_install**:以SYSDBA或SYSOPER身份登录,作为系统管理员,不能以NORMAL身份登录。 - **system/manager**:同样具备SYSDBA权限,但不能以SYSOPER身份登录,常用于系统管理。 - **sysman/oem_...

    ORACLE系统自带用户默认密码

    - **登录身份**:SYSDBA 或 SYSOPER - **说明**:该用户拥有最高级别的权限,可以对整个数据库进行管理。其中,SYSDBA 权限允许用户执行所有数据库管理任务,包括启动和关闭数据库实例;而 SYSOPER 权限则主要针对...

    ORACLE数据库基础教程课后参考答案(人民邮电出版社)[定义].pdf

    - Oracle Enterprise Manager是用于管理和监控Oracle数据库的工具,提供Normal、SYSOPER和SYSDBA等不同权限级别。 - Oracle Net Manager用于配置数据库连接,连接失败可能是由于服务未启动、人为切断连接等原因,...

    吉林大学Oracle课堂记录含例子

    - **用户与权限**:Oracle数据库中的用户具有不同的权限等级,如NORMAL、SYSOPER、SYSDBA,其中SYSDBA拥有最高级别的管理权限。 - **数据字典视图**:通过查询用户数据字典视图,如USER_TABLES、USER_TAB_COLUMNS等...

    oracle数据库常用命令.txt

    ### Oracle数据库常用命令知识点 ...通过以上知识点的详细介绍,我们对Oracle数据库的常用命令有了更深入的理解,这些命令涵盖了登录、管理、查询等多个方面,对于日常的数据库管理和维护工作非常有用。

    Oracle数据库管理员

    - **sys 用户**:具有"SYSDBA"或"SYSOPER"权限,"SYSOPER"权限允许执行操作级别的任务,如服务器的启停、备份恢复等。sys用户的默认密码在安装时更改。 - **scott 用户**:普通用户,拥有“Normal”权限,主要用来...

    oracle在linux的启动、访问、停止整理.pdf

    访问Oracle数据库通常通过SQL*Plus或其他客户端工具完成,需要以具有相应权限的用户(如SYSDBA或SYSOPER)登录。例如,使用`sqlplus /nolog`然后`connect`命令可以以SYSDBA身份连接到数据库。 在停止数据库时,可以...

    oracle资料

    - **Oracle Enterprise Manager身份验证**:登录Oracle Enterprise Manager时,支持Normal、SYSOPER和SYSDBA三种身份验证方式。 - **Oracle Net Manager连接问题**:如果出现连接失败,可能是由于数据库服务未启动...

Global site tag (gtag.js) - Google Analytics