Oracle許可權管理

2022-05-21 22:12:14 字數 3804 閱讀 5189

一)使用者

oracle中的使用者分為二大類

1)oracle資料庫伺服器建立時,由系統自動建立的使用者,叫系統使用者,如sys。

2)利用系統使用者建立的使用者,叫普通使用者,如scott,hr,c##tiger,zhaojun,...

》用sys登入,查詢當前oracle資料庫伺服器中已有使用者的名字和狀態

username表示登入名

expired&locked表示帳號過期和鎖定

open表示帳號現在可用

sqlplus / as sysdba;

col username for a10;

col account_status for a10;

set pagesize 100;

select username,account_status from dba_users;

查詢oracle中有哪些使用者

select * from all_users;

二)建立與刪除普通使用者

可以在oracle中建立新的普通使用者,建立普通使用者命令是:create user,在建立普通使用者的同時,應該為其分配乙個具體的表空間,通常叫users。

》用sys登入,查詢oracle中有哪些可用儲存空間,所有普通使用者預設為users儲存空間

select * from v$tablespace;

》用sys登入,建立普通使用者c##tiger,密碼為abc,預設使用users儲存空間,即對應硬碟上的乙個dbf二進位制檔案

sqlplus / as sysdba;

create user c##tiger identified by abc default tablespace users;

》用sys登入,為c##tiger分配users空間無限制使用,即資料庫中dbf檔案可以無限增加,乙個dbf檔案不夠,會建立第二個dbf檔案

sqlplus / as sysdba;

alter user c##tiger quota unlimited on users;

》用c##tiger登入,能進orcl資料庫嗎?

sqlplus c##tiger/abc

進不去orcl資料庫

》用sys登入,刪除普通使用者c##tiger

sqlplus / as sysdba;

drop user c##tiger cascade;

三)了解系統使用者

sys是oracle中乙個重要的系統使用者,sys是oracle中最高許可權使用者,其角色為sysdba(系統管理員)

sqlplus / as sysdba

四)許可權

許可權的最終作用於使用者。即所有使用者在資料庫內的操作物件和可執行的動作都是受到限制的。

oracle中許可權分為二大類:

1)系統許可權

2)物件許可權

五)系統許可權

針對資料庫中特定操作的許可,例如:讓c##tiger能登入到orcl資料庫,能在orcl資料庫中建立表

》用sys登入,獲取系統許可權的相關資訊,例如:select any table表示針對所有表的select許可權

sqlplus / as sysdba;

select distinct privilege from dba_sys_privs;

》用sys登入,為c##tiger分配create session與資料庫建立會話的許可權,即允許該使用者登入

sqlplus / as sysdba;

grant create session to c##tiger;

》用c##tiger登入,能進orcl資料庫嗎?

sqlplus c##tiger/abc

能進去orcl資料庫

》用c##tiger登入,建立一張tiger的表,能建立嗎?

sqlplus c##tiger/abc

create table tiger(

name varchar2(20)

);這時c##tiger沒有許可權建立表

》用sys登入,為c##tiger分配create table許可權,即允許建立表

sqlplus / as sysdba;

grant create table to c##tiger;

》用c##tiger登入,建立一張tiger的表,能建立嗎?

sqlplus c##tiger/abc

create table tiger(

name varchar2(20)

);可以建立c##tiger表

》用sys登入,查詢c##tiger所擁有的系統許可權

sqlplus / as sysdba;

select grantee,privilege from dba_sys_privs where lower(grantee) = 'c##tiger';

grantee表示普通使用者名稱

privilege許可權名

》用sys登入,撤銷c##tiger的create table許可權

sqlplus / as sysdba;

revoke create table from c##tiger;

六)物件許可權

使用者對已有物件的操作許可權,包括:

1)select可用於表,檢視和序列

2)insert向表或檢視中插入新的記錄

3)update更新表中資料

4)delete刪除表中資料

5)execute函式,過程的執行

6)index為表建立索引

7)references為表建立外健

8)alter修改表或者序列的屬性

》用sys登入,查詢c##tiger所擁有的物件許可權

sqlplus / as sysdba;

col grantee for a10;

col table_name for a10;

col privilege for a20;

select grantee,table_name,privilege from dba_tab_privs where lower(grantee) = 'c##tiger';

》用sys登入,為c##tiger分配對tiger表的所有許可權,即增刪改查操作

sqlplus / as sysdba;

grant all on c##tiger.tiger to c##tiger;

注意:c##tiger表示空間名

tiger表示該空間下的表名

c##tiger tiger flashback

c##tiger tiger debug

c##tiger tiger query rewrite

c##tiger tiger on commit refresh

c##tiger tiger references

c##tiger tiger update

c##tiger tiger select

c##tiger tiger insert

c##tiger tiger index

c##tiger tiger delete

c##tiger tiger alter

》用c##tiger登入,對tiger表進行增刪改查操作

sqlplus c##tiger/abc;

insert into tiger(name) values('aa');

update tiger set name = 'bb';

delete from tiger where rownum = 1;

select * from tiger;

Oracle許可權管理

oracle中的許可權管理 說明 oracle中許可權分為系統許可權和物件許可權 1.oracle中有3個預設的使用者 1.sys使用者 change on install dba使用者 登入是必須加 as sysdba 2.system使用者 manager 管理員使用者 3.scott使用者 t...

oracle許可權管理

select from system privilege map 檢視系統所有許可權 208種許可權 create user jsx1 identified by 123456 建立使用者jsx1 密碼為123456 create user jsx2 identified by 123456 建立使...

oracle許可權管理

oracle中資料字典檢視分為3大類,用字首區別,分別為 user,all 和 dba,許多資料字典檢視包含相似的資訊。user 有關使用者所擁有的物件資訊,即使用者自己建立的物件資訊 all 有關使用者可以訪問的物件的資訊,即使用者自己建立的物件的資訊加上其他使用者建立的物件但該使用者有權訪問的資...