sysdba,dba,sysoper的區別

tianya_2011發表於2011-05-18

syssystem使用者區別:

1)最重要的區別,儲存的資料的重要性不同

sys所有oracle的資料字典的基表和檢視都存放在sys使用者中,這些基表和檢視對於oracle的執行是至關重要的,由資料庫自己維護,任何使用者都不能手動更改。sys使用者擁有dbasysdbasysoper等角色或許可權,是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

 

Oracle安裝會自動的生成sys使用者和system使用者:

1sys使用者是超級使用者,具有最高許可權,具有sysdba角色,有create database的許可權,該使用者預設的密碼是change_on_install

2system使用者是管理操作員,許可權也很大。具有sysoper角色,沒有create database的許可權,預設的密碼是manager

3)一般講,對資料庫維護,使用system使用者登入就可以拉 也就是說syssystem這兩個使用者最大的區別是在於有沒有create database的許可權。

Sysdbasysoper兩個系統許可權區別:

normal sysdba sysoper有什麼區別
normal
是普通使用者
另外兩個,你考察他們所具有的許可權就知道了
sysdba
擁有最高的系統許可權,登陸後是 sys
sysoper
主要用來啟動、關閉資料庫,sysoper 登陸後使用者是 public

sysdbasysoper屬於system privilege,也稱為administrative privilege,擁有例如資料庫開啟關閉之類一些系統管理級別的許可權sysdbasysoper具體的許可權可以看下錶:

sysdba,dba,sysoper的區別

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


dbasysdba的區別:


dbasysdba這兩個系統角色有什麼區別呢

在說明這一點之前我需要說一下oracle服務的建立過程

建立例項→·啟動例項→·建立資料庫(system表空間是必須的)

啟動過程

例項啟動→·裝載資料庫→·開啟資料庫

sysdba,是管理oracle例項的,它的存在不依賴於整個資料庫完全啟動,只要例項啟動了,他就已經存在,以sysdba身份登陸,裝載資料庫、開啟資料庫。只有資料庫開啟了,或者說整個資料庫完全啟動後,dba角色才有了存在的基礎!


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25373498/viewspace-731413/,如需轉載,請註明出處,否則將追究法律責任。

相關文章