oracle 許可權相關內容總結

2021-06-05 18:14:26 字數 4843 閱讀 7943

1. 系統許可權管理

1.1 3個預設使用者

oracle 9i

sys    change_on_install [as sysdba]--sqlplus /as sysdba

system manager

scott  triger

oracle 10g以上

sys    安裝的時候設定. [as sysdba]

system 安裝的時候設定.

scott  triger 預設為鎖定。應該解鎖(alter user account lock/unlock )

sys   :oracle 網路管理員。全域性的管理員

system:普通管理員

scott :普通使用者

oracle使用條件:啟用監聽(lsnrctl start),啟用資料庫例項(oradin -startup -sid orcl)

1.2 建立使用者

登陸sys:sqlplus /as sysdba conn lisi/lisi

show user(sqlplus) whoami(linux)

create(alter) user lisi identified by lisi;

1.3 分配許可權   

關鍵字:grant xx to user;

grant create session to lisi;

grant create table   to lisi;

grant unlimited tablespace to lisi;

擁有create table 許可權,就擁有了select,insert,update,delete table和drop table許可權

自己建立的表就擁有了這張表的所有許可權   

1.4 撤銷許可權   

關鍵字:revoke xx from user;

revoke create session from lisi;

revoke create table   from lisi;

revoke unlimited tablespace from lisi; 

1.5 檢視系統許可權的資料字典

select * from user_sys_privs;

2. 物件許可權

2.1 概念:訪問其他使用者建立的物件,每個物件都屬於某乙個使用者。其他物件訪問,需要賦許可權

2.2 兩個使用者屬於兩個不同的事務。乙個使用者下沒有commit,另乙個使用者不能訪問,commit類似存檔的概念

2.3 授權物件許可權

關鍵字:grant xx on table to user;

例子  :grant select,insert,update,delete on table to lisi;

授權所有許可權:grant all on table to user(public);

2.4 撤銷許可權

關鍵字:revoke xx on table from user(public);

例子  :revoke all on table from lisi(public);

2.5 誰擁有許可權,誰可以授權

2.6 檢視物件許可權的資料字典

select * from user_tab_privs;

2.7 顯示格式

set linesize 400

dbms_output.disable;

插入的時候會將表鎖定,表級別的鎖 

2.8 對table的列的許可權控制

授權:grant xx(column) on table to user;

撤銷許可權:revoke xx(column) on table from user;   

insert,update可以控制到列,select,delete不行

資料字典:select * from user_col_privs;

2.9 查詢的概念

ddl(資料定義語言),dml(資料操縱語言),dcl(授權和撤銷許可權)。只有dml語言有transaction的控制

3. 許可權傳遞

3.1系統許可權的傳遞

預設    :許可權可以使用,但是不能傳遞(9i和10g不一樣)

許可權傳遞:grant xx to user with admin option

撤銷傳遞:源頭斷了,就不能傳遞了

3.2物件許可權的傳遞

預設    :許可權可以使用,不能傳遞

許可權傳遞:grant xx on table to user with grant option;

撤銷傳遞:源頭斷了,就不能傳遞了(9i和10g不一樣)

4. 角色管理

4.1  概念:角色就是許可權的集合

4.2  建立和role:create role xx; drop role xx;

4.3  許可權放在role:grant xx to role;

4.4  許可權授權給user:grant xx to user;

4.5  撤銷許可權: revoke xx from user或者刪除角色

4.6  使用範圍:有限許可權太高,不能直接賦予role,只能賦予user,例如:unlimited tablespace

4.7  create table 和create any table的區別

create table:只能給自己建立表

create any table:不僅可以給自己建立表,還可以給任何使用者建立表

4.8  只有alter any table和drop any table許可權

擁有create table,就擁有了alter table 和drop table

4.9  角色不屬於任意乙個使用者。是共用的。

4.10 檢視role的資料字典:

select * from dba_roles; --查詢當前所有role列表,包括自定義

select * from dba_role_privs; --查詢某使用者的role許可權

select * from role_sys_privs; --查詢當前使用者的role,及其所包含的系統許可權

5. 三種登陸方式

5.1 普通使用者密碼修改

用sys使用者登入,修改密碼:

命令列:alter user scott identified by tiger;

圖形介面也可以修改:會轉化為sql語句

5.2 sys(sysdaa,sysoper)使用者密碼丟了。不能直接修改

5.3 oracle資料庫的三種驗證機制

a.作業系統驗證

b.密碼檔案驗證

c.資料庫的驗證

一般的oracle使用者       :使用資料庫的驗證,先啟動資料庫,然後再驗證

sys(sysdaa,sysoper)使用者:作業系統驗證和密碼檔案的驗證

5.4 oracle的啟動過程

5.4.1.linux下oracle啟動過程:

a.lsnrctl start(啟用監聽)

b.sqlpuls /(sys/oracle) as sysdba

c.startup 啟動例項

先鏈結監聽,再鏈結資料庫例項.linux有嚴格的啟動資料

監聽:為了區分sys(sysdaa,sysoper)使用者和一般的使用者

10g以後的用法:sqlplus /(sys/oracle) as sysdba

10g前的用法  :sqlplus /nolog;conn sys/oracle as sysdba

5.4.2 windows下oracle的啟動過程

lnsrctl start

oradin  -start -sid orcl

5.5 預設是作業系統驗證,沒有驗證通過在進行密碼檔案的驗證

計算機管理:組:ora_dba

sqlplus / as sysdba(作業系統的驗證)

sqlpuls sys/oracle as sysdba(密碼檔案的驗證)

5.6 實際應用中。一般把作業系統驗證取消

5.7 sys密碼忘記。只能修改密碼檔案

備份product\10.2.0\db_2\database下的pwdorcl.ora ora檔案

使用命令重新生成密碼檔案:pwdorcl.ora ora

命令:orapwd file=pwdora10g.ora password-sys entries=10(特權使用者) force(whether overwrite)        

sys特權使用者檢視資料字典:select v$pwdfile_users(動態效能表);

6. 帳戶管理細節

6.1 建立使用者

create user            使用者名稱

identified by          密碼

default tablespace     預設表空間(屬於使用者的table,index,約束)

temporary tablespace   臨時表空間(主要使用排序.group by order by等)

quota(限額) 整數 k|m|limited on 表空間(quota 50m on tablespace)

6.2 參考orcle客戶端的圖形介面(限額)。分配了unlimited tablespace分配了,就沒有限額

6.3 圖形介面建立使用者時候。預設給了角色,使用者沒有任何資料。在方案裡面沒有使用者,預設在安全性裡面 

6.4 使用者加鎖解鎖和口令失效

命令列:alter xx user account lock/unlock;

使用者口令即刻失效:alter user xx password expire;(ebs建立使用者的時候)

6.5 drop user xx [cascade]

cascade:表示刪除使用者所有物件

drop user xx cascade;

ORACLE相關內容

1 em,dbca,netca,netmgr出現亂碼方案 cd oracle home jre lib mv font.properties font.properties.bak mv font.properties.zh font.properties em,dbca,netca,netmgr詳...

執行緒相關內容總結

1 corepoolsize 代表核心執行緒數。每當新的任務提交過來的時候,執行緒池就會建立乙個核心執行緒來執行這個任務,即使已經有其他的核心執行緒處於空閒狀態。而當需要執行的任務數大於核心執行緒數時,將不再建立新的核心執行緒。2 maximumpoolsize 代表執行緒所允許的最大數量。即,當阻...

檢測相關內容總結

設取樣點為 y n,n 1,n 這些取樣點由目標訊號 m ae 和i q兩路功率均為 sigma 2 2 的高斯白雜訊 omega n 組成,對應假設 h 0 和 h 1 下 y n 的組成分別為 h 0 y n omega n h 1 y n m omega n 設 z n y n 則對應假設 h...