sys,system账户,sysdba和sysoper权限

 一、sys,system帐户

    Oracle 数据库安装完毕后,系统会自动创建两个帐户如下:

    sys     :缺省密码为CHANGE_ON_INSTALL ,且被授予DBA角色

    system  :缺省密码为MANAGER,且被授予DBA角色

 

   下面具体描述syssystem帐户

    sys :这个帐户相当于SQL server中的sa帐户,或者说Xp系统的administrator,Linux系统中的root帐户 ,是个超级帐户,拥有的权限最大,可以完成数据库的所有管理务。Oracle中全部的基表,视图等都是以sys架构存储在数据字典中,类似于SQLservermaster数据库,存储了所有最原始最基本最关键的系统结构,数据等。因此所有以sys架构的对象不允许用户或数据库管理员修改也不建议创建sys架构的对象。

       

    system :该帐户除了不能完成备份恢复,以及升级之外的数据库所有管理任务,通常用来创建一些用于查看管理信息的表或视图,以及一些被不同Oracle数据库选项和工具使用的内部表或内部视图。同样也不建议使用system架构来创建一些与管理无关的表或视图。

 

 

二、Sysoper Sysdba

   sysoper权限能够执行下列操作

        startup

        shutdown

        create spfile

        alter database [mount | open | close | dismount]

        alter [database | tablespace] [begin | end] backup

        alter database recover

        restricted session

   

    sysdba权限

        除了能执行上述所有命令之外,还能创建数据库,删除数据库,数据库日志归档,执行不完全恢复,以及创建其它的sysopersysdba用户

 

 

  总结:

        sysopersysdba不是角色,DBA角色也不包含这两种权限。

        这是两种用于完成数据库管理任务的特殊权限,如数据库创建,实例启动、关闭等

        这两个权限独立于数据库之外,位于数据库密码文件之中,属于密码认证范畴

        通常在启动数据库时使用的场合较多,当然也可以以这两种方式连接数据库

        连接数据库时使用sysdbashow user查看时为sys,使用sysopershow user查看时为public

 

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

 

  系统权限
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

 

SYSOPER lets database administrators perform STARTUP, SHUTDOWN, ALTER DATABASE OPEN/MOUNT, ALTER DATABASE BACKUP, ARCHIVE LOG, and RECOVER, and includes the RESTRICTED SESSION privilege. 
SYSDBA contains all system privileges with ADMIN OPTION, and the SYSOPER system privilege. Permits CREATE DATABASE and time-based recovery.

 

 

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

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

 

 

sys -- sysdba 
system --sysoper 

 

 SYS用户:

SYS,默认密码为CHANGE_ON_INSTALL,当创建一个数据库时,SYS用户将被默认创建并授予DBA角色,所有数据库数据字典中的基本表和视图都存储在名为SYS的方案中,这些基本表和视图对于Oracle数据库的操作时非常重要的。为了维护数据字典的真实性,SYS方案中的表只能由系统来维护,他们不能被任何用户或数据库管理员修改,而且任何用户不能在SYS方案中创建表。

SYSTEM用户:
SYSTEM,默认密码为MANAGER,与SYS一样,在创建Oracle数据库时,SYSTEM用户被默认创建并被授予DBA角色,用于创建显示管理信息的表或视图,以及被各种Oracle数据库应用和工具使用的内容表或视图。

DBSNMP用户:
DBSNMP是Oracle数据库中用于智能代理(Intelligent Agent)的用户,用来监控和管理数据库相关性能的用户,如果停止该用户,则无法提取相关的数据信息;

SYSMAN用户:
SYSMAN是Oracle数据库中用于EM管理的用户,如果你不用该用户,也可以删除。

 

你可能感兴趣的:(System,帐户)