Oracle中sys和system用戶、系統(tǒng)權限和角色的區(qū)別
1)最重要的區(qū)別,存儲的數(shù)據(jù)的重要性不同
【sys】 所有oracle的數(shù)據(jù)字典的基表和視圖都存放在sys用戶中,這些基表和視圖對于oracle的運行是至關重要的,由數(shù)據(jù)庫自己維護,任何用戶都不能手動更改。sys用戶擁有dba,sysdba,sysoper等角色或權限,是oracle權限最高的用戶。
【system】 用戶用于存放次一級的內(nèi)部數(shù)據(jù),如oracle的一些特性或工具的管理信息。system用戶擁有普通dba角色權限。
2)其次的區(qū)別,權限的不同。
【system】用戶只能用normal身份登陸em,除非你對它授予了sysdba的系統(tǒng)權限或者syspoer系統(tǒng)權限。
【sys】用戶具有“SYSDBA”或者“SYSOPER”系統(tǒng)權限,登陸em也只能用這兩個身份,不能用normal。
以sys用戶登陸Oracle,執(zhí)行select * from V_$PWFILE_USERS;可查詢到具有sysdba權限的用戶,如:
USERNAME SYSDBA SYSOPER
SYS TRUE TRUE
Sysdba和sysoper兩個系統(tǒng)權限區(qū)別
normal 、sysdba、 sysoper有什么區(qū)別
normal 是普通用戶
另外兩個,你考察他們所具有的權限就知道了
sysdba擁有最高的系統(tǒng)權限,登陸后是 sys
sysoper主要用來啟動、關閉數(shù)據(jù)庫,sysoper 登陸后用戶是 public
sysdba和sysoper屬于system privilege,也稱為administrative privilege,擁有例如數(shù)據(jù)庫開啟關閉之類一些系統(tǒng)管理級別的權限sysdba和sysoper具體的權限可以看下表:

oracle <wbr>sys和system用戶區(qū)別
system如果正常登錄,它其實就是一個普通的dba用戶,但是如果以as sysdba登錄,其結(jié)果實際上它是作為sys用戶登錄的,這一點類似Linux里面的sudo的感覺,從登錄信息里面我們可以看出來。因此在as sysdba連接數(shù)據(jù)庫后,創(chuàng)建的對象實際上都是生成在sys中的。其他用戶也是一樣,如果 as sysdba登錄,也是作為sys用戶登錄的,看以下實驗:
SQL> create user strong identified by strong;
用戶已創(chuàng)建。
SQL> conn strong/strong@magick as sysdba;
已連接。
SQL> show user;
USER 為 "SYS"
SQL> create table test(a int);
表已創(chuàng)建。
SQL> select owner from dba_tables where table_name='test';
未選定行 //因為創(chuàng)建表時oracle自動轉(zhuǎn)為大寫,所以用小寫查的時候是不存在的;
SQL> select owner from dba_tables where table_name='TEST';
OWNER
------------------------------
SYS
dba和sysdba的區(qū)別
dba、sysdba這兩個系統(tǒng)角色有什么區(qū)別呢
在說明這一點之前我需要說一下oracle服務的創(chuàng)建過程
創(chuàng)建實例→啟動實例→創(chuàng)建數(shù)據(jù)庫(system表空間是必須的)
啟動過程
實例啟動→裝載數(shù)據(jù)庫→打開數(shù)據(jù)庫
sysdba,是管理oracle實例的,它的存在不依賴于整個數(shù)據(jù)庫完全啟動,只要實例啟動了,他就已經(jīng)存在,以sysdba身份登陸,裝載數(shù)據(jù)庫、打開數(shù)據(jù)庫。只有數(shù)據(jù)庫打開了,或者說整個數(shù)據(jù)庫完全啟動后,dba角色才有了存在的基礎!
1.DBA權限主要包含的是數(shù)據(jù)庫管理相關的權限
2.需要給你的用戶admin賦予建表等相關權限,比如
grant create table to admin; --創(chuàng)建表 grant create view to admin; -- 創(chuàng)建視圖
3.也可以直接給connect和resource角色,其包括大部分需要的 grant connect,resource to admin;
這兩個角色包括的權限(以oracle 10g為例)有:
CONNECT角色: --是授予最終用戶的典型權利,最基本的
CREATE SESSION --建立會話
RESOURCE角色: --是授予開發(fā)人員的
CREATE CLUSTER --建立聚簇
CREATE PROCEDURE --建立過程
CREATE SEQUENCE --建立序列
CREATE TABLE --建表
CREATE TRIGGER --建立觸發(fā)器
CREATE TYPE --建立類型
CREATE OPERATOR --創(chuàng)建操作者
CREATE INDEXTYPE --創(chuàng)建索引類型
CREATE TABLE --創(chuàng)建表
相關文章
如何解決Oracle EBS R12 - 以Excel查看輸出格式為“文本”的請求時亂碼
這篇文章主要介紹了如何解決Oracle EBS R12 - 以Excel查看輸出格式為“文本”的請求時亂碼的相關資料,需要的朋友可以參考下2015-09-09
Oracle配置dblink訪問PostgreSQL的操作方法
本文給大家介紹下Oracle配置dblink訪問PostgreSQL的操作方法,通過dblink訪問PostgreSQL的詳細過程,對Oracle?dblink訪問PostgreSQL相關知識感興趣的朋友一起看看吧2022-03-03
Oracle數(shù)據(jù)庫升級或數(shù)據(jù)遷移方法研究
本文詳細論述了oracle數(shù)據(jù)庫升級的升級前的準備、升級過程和升級后的測試與調(diào)整工作,并對各種升級方法在多種操作系統(tǒng)平臺上作了測試。2016-07-07

