oracle 的sys 和 system 帐号

sys 和 system 帐号有啥区别?一直以来懵懵懂懂,只想固然的认为就是权限大小不同。sql

可是,它们都是管理员?数据库

如今,我知道有一个区别了:服务器

【sys】只能用sysdba身份登陆(也许还有sysoper?),在客户端和服务器均可以
【system】在客户端只能用normal身份登陆;在服务器,normal和sysdba均可以。markdown

另外,normal身份登陆,不能带“;”号,不然系统会觉得这是链接串的一部分,我靠。我发如今sqlplus外面,真不能随便带这个分号,好比expdp,impdp等等。oracle

其余区别学习笔记:
一、最重要的区别,存储的数据的重要性不一样
【sys】
全部Oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是相当重要的,由数据库本身维护,任何用户都不能手动更改。工具

【system】
用户用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。学习

二、其次的区别,权限的不一样
【sys】
拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。登录em也只能用这两个身份,不能用normal。.net

【system】
system用户拥有普通dba角色权限。用户只能用normal身份登录em,除非你对它授予了sysdba的系统权限或者syspoer系统权限。orm

system若是正常登陆,它其实就是一个普通的dba用户,可是若是以as sysdba登陆,其结果实际上它是做为sys用户登陆的blog

三、sysdba和dba的区别

sysdba,是管理oracle实例的,它的存在不依赖于整个数据库彻底启动,只要实例启动了,它就已经存在,以sysdba身份登录,装载数据库、打开数据库。

只有数据库打开了,或者说整个数据库彻底启动后,dba角色才有了存在的基础。

四、Sysdba和sysoper两个系统权限区别
【sysdba】拥有最高的系统权限,登录后是 sys

【sysoper】主要用来启动、关闭数据库,sysoper 登录后用户是 public

这里写图片描述

参考资料:
Oracle sys和system用户、sysdba 和sysoper系统权限、sysdba和dba角色的区别