`
xiangkui
  • 浏览: 24491 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Oralce中DBA角色 sys-system-sysdba区别

 
阅读更多
Ø         sys和system用户区别



1 )   最重要的区别,存储的数据的重要性不同

【sys】  所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。



【system】  用户用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有普通dba角色权限。

 

2)   其次的区别,权限的不同。

【system】用户只能用normal身份登陆em,除非你对它授予了sysdba的系统权限或者syspoer系统权限。
【sys】用户具有“SYSDBA”或者“SYSOPER”系统权限,登陆em也只能用这两个身份,不能用normal。

 以sys用户登陆Oracle,执行select * from V_$PWFILE_USERS;可查询到具有sysdba权限的用户,如:

SQL> select * from V_$PWFILE_USERS;
  USERNAME SYSDBA SYSOPER
  SYS TRUE TRUE

Ø         Sysdba和sysoper两个系统权限区别



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


sysdba和sysoper属于system privilege,也称为administrative privilege,拥有例如数据库开启关闭之类一些系统管理级别的权限sysdba和sysoper具体的权限可以看下表:






系统权限


sysdba


sysoper




区别


Startup(启动数据库)


startup




Shutdown(关闭数据库)


shutdown




alter database open/mount/backup


alter database open/mount/backup




改变字符集


none




create database(创建数据库)


None不能创建数据库




drop database(删除数据库)


none




create spfile


create spfile




alter database archivelog(归档日志)


alter database archivelog




alter database recover(恢复数据库)


只能完全恢复,不能执行不完全恢复




拥有restricted session(会话限制)权限


拥有restricted session权限




可以让用户作为sys用户连接


可以进行一些基本的操作,但不能查看用户数据




登录之后用户是sys


登录之后用户是public






system如果正常登录,它其实就是一个普通的dba用户,但是如果以as sysdba登录,其结果实际上它是作为sys用户登录的,这一点类似Linux里面的sudo的感觉,从登录信息里面我们可以看出来。因此在as sysdba连接数据库后,创建的对象实际上都是生成在sys中的。其他用户也是一样,如果 as sysdba登录,也是作为sys用户登录的,看以下实验: 

SQL> create user strong identified by strong;

用户已创建。

SQL> conn strong/strong@magick as sysdba;

已连接。

SQL> show user;

USER 为 "SYS"

SQL> create table test(a int);

表已创建。

SQL> select owner from dba_tables where table_name='test';

未选定行 //因为创建表时oracle自动转为大写,所以用小写查的时候是不存在的;

SQL> select owner from dba_tables where table_name='TEST';

OWNER

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

SYS

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

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

相关推荐

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

    【sys】 所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都...sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。

    Oracle中sys和system的区别小结

    是Oracle数据库中权限最高的帐号 SYSTEM具有DBA权限。但没有SYSDBA权限。平常一般用该帐号管理数据库就可以了。 2. (1)sys — sysdba system –sysoper (2)startup/shutdown/dba管理两个都能做 (3)sys拥有数据...

    Oracle DBA workshop1 (中文版)

    预定义帐户:SYS 和SYSTEM 6-5 创建用户6-6 验证用户6-7 管理员验证6-9 解除用户帐户的锁定并重置口令6-10 权限6-11 系统权限6-12 对象权限6-14 v 撤销具有ADMIN OPTION 的系统权限6-15 撤销具有GRANT OPTION 的对象...

    sys用户与system用户.txt

    sys 用户拥有 dba , sysdba , sysoper 等角色或权限,是 oracle 权限最高的用户。 【 system 】 用户用于存放次一级的内部数据,如 oracle 的一些特性或工具的管理信息。 system 用户拥有普通 dba 角色权限。 ...

    Oracle中sys和system用户、系统权限和角色的区别

    sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。 【system】 用户用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有普通dba角色权限。 2)其次的区别,权限的...

    oracle10g课堂练习I(2)

    预定义帐户: SYS 和 SYSTEM 6-4 创建用户 6-5 验证用户 6-6 管理员验证 6-8 解除用户帐户的锁定并重置口令 6-9 权限 6-10 系统权限 6-11 对象权限 6-13 使用 ADMIN OPTION 撤销系统权限 6-14 使用 GRANT ...

    DOS下启动oracle监听

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

    oracle恢复工具-FY_Recover_Data

    由于在System表空间中已经记录了新的信息, 因此用当前的System信息是不能恢复过来的,在AUL/MyDUL中可以当作没有System时的情况来处理,在下面的命令中, 我们用Truncate后的数据对象号就不能进行恢复, 而使用Truncate...

    oracle11g密码敏感取消

    conn sys /sunshine@mis as sysdba -- select * from dba_profiles -- SELECT * FROM V$PARAMETER; --去掉字符大小写敏感设置:禁止密码大小写敏感 show parameter sec_case_sensitive_logon alter system set sec_...

    oracle 视图,函数,过程,触发器自动编译脚本

    and a.owner not in ('SYS' ,'SYSTEM','OUTLN','U_SYSTEM'); spool off exit; eof # Start to backup oracle database param echo "-------------- Complete obj compile Started on `date` -------------" >>...

    Oracle 教程 Oracle Server

    每个 Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优先级的Sys用户的别名,它由DBA用户使用来完成数据库的管理任务...

    Oracle大型数据库技术详解

    每个 Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优先级的Sys用户的别名,它由DBA用户使用来完成数据库的管理任务...

    最全的oracle常用命令大全.txt

    su - oracle -c "exp system/manager full=y inctype=complete file=/oracle/export/db_comp$rq.dmp" 累计备份的SH文件:exp_cumu.sh rq=` date +"%m%d" ` su - oracle -c "exp system/manager full=y inctype=...

    ORACLE initialization or shutdown in process

    SQL>connect sys/change_on_install as sysdba 提示:已成功 SQL>shutdown normal 提示:数据库已经关闭 已经卸载数据库 ORACLE 例程已经关闭 SQL>startup mount 提示:ORACLE例程已经启动 Total System Global ...

    韩顺平oracle学习笔记

    2.oracle安装会自动的生成sys和system两个用户 2 说明: 1Sys用户 是 超级用户,具有最高权限,具有sysdba角色,create database? 的权限,默认密码是manager 2System 用户 是 管理操作员,权限也很大,具有...

    oracle 11g安装配置

    [root@dbserver ~]# useradd -g oinstall -G dba oracle [root@dbserver ~]# passwd oracle   [root@dbserver ~]# mkdir /opt/oracle [root@dbserver ~]# chown -R oracle:oinstall /opt/oracle/ [root@dbserver ~...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    说明:Oracle中需要创建用户一定是要具有dba(数据库管理员)权限的用户才能创建,而且创建的新用户不具备任何权限,连登录都不可以。 用法:create user 新用户名 identified by 密码 例子: 2. 修改密码 说明:...

    ORACLE 常用手册导入导出

    3. 复制 oracle目录中的oradata\oradb的子目录中的所有文件 到备份的目录中 冷恢复 1.将数据文件还原回所在位置 ,然后启动数据库 2.starup 进行热备份必须处于“归档日志模式下” 1.启动sqlplus ,并以...

Global site tag (gtag.js) - Google Analytics