資料庫同乙個庫上面,不同使用者相互賦予許可權

2021-06-05 17:09:57 字數 1595 閱讀 7536

用法:

有兩個使用者:user1和user2,都是在庫test上,分別有表user1.table1,user2.table2

但是用user1登入的時候,user2上表就不能用,此時就可以使用grant命令了:

grant privilege [, ...] on object [, ...]    to 

如 grant insert,update,delete on user2.bable2 to user1   此時,user1使用者就可以操作user2使用者的table2表了,

如 在user1下,select * from user2.table2

高階:不同庫

命令格式

grant 許可權 on 資料庫名.表名 to 使用者名稱@登陸方式 identified by 'password1';

revoke的作用則是**授於使用者的許可權

命令格式為:

revoke 許可權 on 資料庫名.表名 from 使用者名稱@登陸方式;

檢視許可權:

oracle中資料字典檢視分為3大類,用字首區別,分別為:user,all 和 dba,許多資料字典檢視包含相似的資訊。

user_*:有關使用者所擁有的物件資訊,即使用者自己建立的物件資訊

all_*:有關使用者可以訪問的物件的資訊,即使用者自己建立的物件的資訊加上其他使用者建立的物件但該使用者有權訪問的資訊

dba_*:有關整個資料庫中物件的資訊

(這裡的*可以為tables,indexes,objects,users等。)

1.1檢視所有使用者

1.select * from dba_user;

2.select * from all_users;

3.select * from user_users;

1.2檢視使用者系統許可權

1.select * from dba_sys_privs;

2.select * from all_sys_privs;

3.select * from user_sys_privs;

1.3檢視使用者物件許可權

1.select * from dba_tab_privs;

2.select * from all_tab_privs;

3.select * from user_tab_privs;

1.4.檢視所有角色

1.select * from dba_roles;

1.5.檢視使用者所擁有的角色

1.select * from dba_role_privs;

2.select * from user_role_privs;

1.6.檢視當前使用者的預設表空間

1.select username,default_tablespace from user_users;

1.7.檢視某個角色的具體許可權

1.如grant connect,resource,create session,create view to test;

2.檢視resource具有那些許可權,

3.用select * from dba_sys_privs where grantee='resource';

oracle同乙個庫上面,不同使用者相互賦予許可權

背景 現有乙個使用者,需新增乙個使用者 建立使用者 使用新使用者登入 出現報錯資訊 ora 01045 user system lacks create session privilege logon denied 使用系統使用者登入後,用如下sql語句給出錯使用者賦許可權 grant create...

在同乙個機器上覆制資料庫

將ibs庫複製為orcl1庫。在兩個庫上建立密碼檔案 set oracle sid ibs orapwd file f bbcldb orcl1 pwdibs1.ora password system entries 30 set oracle sid orcl1 orapwd file f bbc...

Python 同乙個類中不同函式相互呼叫

本文採取 metaclass type class stu name none age none school 華南理工大學 類變數,被所有學生例項共有 def init self,name,age self.name name self.age age def printname age self...