資料字典
1、動態資料字典是以v$***開始的資料字典,在資料庫中約有150個左右,這些資料字典反映資料庫動態執行狀況,在不同時間查詢會得到不同的結果。
2、dba資料字典是以dba_***表示,該資料字典儲存資料庫結構,查詢dba資料字典可以反映資料庫結構設定,管理磁碟空間和表空間、事務與回退段、使用者與表空間等資訊。
3、使用者資料字典是以user_***表示,這些資料字典反應使用者所建立的實體資訊。如,user_tables、user_views,資料庫管理員具有操作全體使用者所有實體的許可權,可以查詢這類資料字典,了解使用者所建立實體狀況,必要時可以將使用者建立的不正確的實體刪除。
4、all_***類資料字典,表示使用者所建立的實體及使用者有權可以訪問的實體。
select privilege from dba_sys_privs where grantee=『username』
oracle查詢使用者許可權
-- 確定角色的許可權
select * from role_tab_privs ; 包含了授予角色的物件許可權
select * from role_role_privs ; 包含了授予另一角色的角色
select * from role_sys_privs ; 包含了授予角色的系統許可權
-- 確定使用者帳戶所授予的許可權
select * from dba_tab_privs ; 直接授予使用者帳戶的物件許可權
select * from dba_role_privs ;授予使用者帳戶的角色
select * from dba_sys_privs ;授予使用者帳戶的系統許可權
檢視當前使用者許可權:
sql> select * from session_privs;
privilege
----------------------------------------
create session
create table
create cluster
create synonym
create view
create sequence
create procedure
create trigger
8 rows selected.
一.概述
與許可權,角色相關的檢視大概有下面這些:
dba_sys_privs: 查詢某個使用者所擁有的系統許可權
user_sys_privs: 當前使用者所擁有的系統許可權
session_privs: 當前使用者所擁有的全部許可權
role_sys_privs: 某個角色所擁有的系統許可權
注意: 要以sys使用者登陸查詢這個檢視,否則返回空.
role_role_privs: 當前角色被賦予的角色
session_roles: 當前使用者被啟用的角色
user_role_privs: 當前使用者被授予的角色
另外還有針對表的訪問許可權的檢視:
table_privileges
all_tab_privs
role_tab_privs: 某個角色被賦予的相關表的許可權
二. examples
1.查詢當前使用者所擁有的許可權
select * from session_privs;
2.查詢某個使用者被賦予的系統許可權.
可以有多種方式
select * from user_sys_privs;
或者: select * from dba_sys_privs where grantee='***'
(需要當前使用者擁有dba角色)
3.查詢當前使用者被授予的角色:
1. select * from session_roles order by role
說明: 這個查詢會返回當前使用者所被授予的全部角色, 其中包括
巢狀授權的角色. 例如將dba角色授予了乙個使用者,dba角色
已經被授予的角色(例如 exp_full_database 和 imp_full_database)
也會被查詢出來
2. select * from user_role_privs
4.查詢某一角色被賦予的系統許可權
select privilege from role_sys_privs where role=&role
輸入 role='connect'
輸出:privilege
--------------------
alter session
create cluster
create database link
create sequence
create session
create synonym
create table
create view
5.查詢當前角色被授予的角色
select granted_role from role_role_privs where role=&role
輸入 role= 'dba'
輸出:granted_role
----------------------
delete_catalog_role
execute_catalog_role
exp_full_database
imp_full_database
plustrace
select_catalog_role
說明: plustrace這個角色是用於執行sqlauto trace的, 通過執行
$oracle_home/sqlplus/admin/plustrce.sql可以生成這個角色.
如何檢視oracle使用者許可權?
oracle資料字典檢視的種類分別為:user,all 和 dba。
user_*:有關使用者所擁有的物件資訊,即使用者自己建立的物件資訊
all_*:有關使用者可以訪問的物件的資訊,即使用者自己建立的物件的資訊加上
其他使用者建立的物件但該使用者有權訪問的資訊
dba_*:有關整個資料庫中物件的資訊
(這裡的*可以為tables,indexes,objects,users等。)
1、檢視所有使用者
select * from dba_user;
select * from all_users;
select * from user_users;
2、檢視使用者系統許可權
select * from dba_sys_privs;
select * from all_sys_privs;
select * from user_sys_privs;
3、檢視使用者物件許可權
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
4、檢視所有角色
select * from dba_roles;
5、檢視使用者所擁有的角色
select * from dba_role_privs;
select * from user_role_privs;
6、檢視當前使用者的預設表空間
select username,default_tablespace from user_users;
7、檢視某個角色的具體許可權
如grant connect,resource,create session,create view to test;
8、檢視resource具有那些許可權
用select * from dba_sys_privs where grantee='resource';
Celery之監控與管理
celery兩種監控工具 命令列實用工具和web實時監控工具flower 一。命令列工具 1 進入shell環境 python 3.7.1 default,jun 12 2020,10 34 40 gcc 4.8.5 20150623 red hat 4.8.5 39 on linux type h...
通過複製oracle軟體方式安裝oracle資料庫
通過複製oracle軟體方式安裝oracle資料庫情況只在以下幾種情況下出現。1.在目標伺服器沒有安裝形圖介面的。2.兩作業系統版本一致,本示例同為oel5.8x64。3.oracle安裝使用者uid,gid屬性一致。本文出自 打包過程略。目錄環境與原資料庫環境一致,將資料庫打包複製到 u01目錄下...
oracle修改欄位的sql語句 Oracle
1 新增字段 create table ord table name type username varchar2 30 cust id number 4 2 刪除字段 alter table table name drop column column name 3 修改字段 alter table...