sys和system用户区别

SYS用数据库的超级用户,数据库内很多重要的东西(数据字典表、内置包、静态数据字典视图等)都属于这个用户,SYS用户必须以SYSDBA身份登录。

SYSTEM是数据库内置的一个普通管理员,你手工创建的任何用户在被授予DBA角色后都跟这个用户差不多(赋予DBA角色相当于给予了一组数据操作的权限)。

相当于sys是qq群主,system是qq群管理员

两者区别
1)最重要的区别,存储的数据的重要性不同
sys所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba角色和sysdba,sysoper身份(系统权限),是oracle权限最高的用户。
system用户用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有普通dba角色权限。

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

sysdba、 sysoper区别

normal 、sysdba、 sysoper有什么区别

normal是普通用户(system用户只能用normal身份登陆)

sysdba不是权限,sysdba拥有最高的系统权限,当用户以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

dba、 sysoper区别

DBA是一种role对应的是对Oracle实例里对象的操作权限的集合,而SYSDBA是概念上的role是一种登录认证时的身份标识而已。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐