如何查詢oracle中所有使用者資訊

2021-09-08 04:19:00 字數 6247 閱讀 2903

1樓:你不愛吃烤肉

方法如下:

輸入select * from dba_users; 即可。

常用語句:

一,檢視資料庫裡面所有使用者:

select * from dba_users;

前提是你是有dba許可權的帳號,如sys,system。

二,檢視你能管理的所有使用者:

select * from all_users;

三,檢視當前使用者資訊 :

select * from user_users;

擴充套件資料:oracle資料庫最新版本為oracle database 12c。oracle資料庫12c引入了一個新的多承租方架構,使用該架構可輕鬆部署和管理資料庫雲。

此外,一些創新特性可最大限度地提高資源使用率和靈活性,如oracle multitenant可快速整合多個資料庫,而automatic data optimization和heat map能以更高的密度壓縮資料和對資料分層。

這些獨一無二的技術進步再加上在可用性、安全性和大資料支援方面的主要增強,使得oracle資料庫12c 成為私有云和公有云部署的理想平臺。

oracle資料庫具有完整的資料管理功能:

1)資料的大量性

2)資料的儲存的永續性

3)資料的共享性

4)資料的可靠性

2樓:大野瘦子

select * from dba_users;

2、只查詢使用者和密碼

select username,password from dba_users;

3、查詢當前使用者資訊

select * from dba_ustats;

4、查詢使用者可以訪問的視**本

select * from dba_varrays;

5、檢視使用者或角色所擁有的角色

select * from dba_role_privs;

select * from user_role_privs;

6、檢視使用者或角色系統許可權(直接賦值給使用者或角色的系統許可權)select * from dba_sys_privs;

select * from user_sys_privs; (檢視當前使用者所擁有的許可權)

3樓:青春逐夢啦啦啦

----1、查詢資料庫中的表空間名稱

----1)查詢所有表空間

select tablespace_name from dba_tablespaces;

select tablespace_name from user_tablespaces;

----2)查詢使用過的表空間

select distinct tablespace_name from dba_all_tables;

select distinct tablespace_name from user_all_tables;

----2、查詢表空間中所有表的名稱

select *  from dba_all_tables where tablespace_name = 'sync_plus_1' and owner='gdsdczj'

----3、查詢系統使用者

select * from all_users

select * from dba_users

----4、檢視當前連線使用者

select * from v$session

----5、檢視當前使用者許可權

select * from session_privs

----6、檢視所有的函式和儲存過程

select * from user_source

----其中type包括:procedure、function

----7、檢視錶空間使用情況

select  sum(bytes_size) from (

select a.file_id "fileno",

a.tablespace_name "表空間",

a.bytes/1024/1021/1024 bytes_size,

a.bytes - sum(nvl(b.bytes, 0)) "已用",

sum(nvl(b.bytes, 0)) "空閒",

sum(nvl(b.bytes, 0)) / a.bytes * 100 "空閒百分率"

from dba_data_files a, dba_free_space b

where a.file_id = b.file_id(+)

group by a.tablespace_name, a.file_id, a.bytes

order by a.tablespace_name

----1.檢視所有使用者:

select * from dba_users;

select * from all_users;

select * from user_users;

----2.檢視使用者或角色系統許可權(直接賦值給使用者或角色的系統許可權):

select * from dba_sys_privs;

select * from user_sys_privs; (檢視當前使用者所擁有的許可權)

----3.檢視角色(只能檢視登陸使用者擁有的角色)所包含的許可權

sql>select * from role_sys_privs;

----4.檢視使用者物件許可權:

select * from dba_tab_privs;

select * from all_tab_privs;

select * from user_tab_privs;

----5.檢視所有角色:

select * from dba_roles;

----6.檢視使用者或角色所擁有的角色:

select * from dba_role_privs;

select * from user_role_privs;

----7.檢視哪些使用者有sysdba或sysoper系統許可權(查詢時需要相應許可權)

select * from v$pwfile_users

----8.sqlplus中檢視一個使用者所擁有許可權

sql>select * from dba_sys_privs where grantee='username';

其中的username即使用者名稱要大寫才行。

比如:sql>select * from dba_sys_privs where grantee='tom';

----9、oracle刪除指定使用者所有表的方法

select 'drop table '||table_name||';' from all_tables

where owner='要刪除的使用者名稱(注意要大寫)';

----10、刪除使用者

drop user user_name cascade;

如:drop user smchannel cascade

----11、獲取當前使用者下所有的表:

select table_name from user_tables;

----12、刪除某使用者下所有的表資料:

select 'truncate table  ' || table_name from user_tables;

----13、禁止外來鍵

----oracle資料庫中的外來鍵約束名都在表user_constraints中可以查到。其中constraint_type='r'表示是外來鍵約束。

----啟用外來鍵約束的命令為:

alter table table_name enable constraint constraint_name

----禁用外來鍵約束的命令為:

alter table table_name disable constraint constraint_name

----然後再用sql查出資料庫中所以外來鍵的約束名:

select 'alter table '||table_name||' enable constraint '||constraint_name||';' from user_constraints where constraint_type='r'

select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints where constraint_type='r'

--14、oracle禁用/啟用外來鍵和觸發器

--啟用指令碼

set serveroutput on size 1000000

begin

for c in (select 'alter table '||table_name||' enable constraint '||constraint_name||' ' as v_sql from user_constraints where constraint_type='r') loop

dbms_output.put_line(c.v_sql);

begin

execute immediate c.v_sql;

exception when others then

dbms_output.put_line(sqlerrm);

end;

end loop;

for c in (select 'alter table '||tname||' enable all triggers ' as v_sql from tab where tabtype='table') loop

dbms_output.put_line(c.v_sql);

begin

execute immediate c.v_sql;

exception when others then

dbms_output.put_line(sqlerrm);

end;

end loop;

end;

commit;

--禁用指令碼

set serveroutput on size 1000000

begin

for c in (select 'alter table '||table_name||' disable constraint '||constraint_name||' ' as v_sql from user_constraints where constraint_type='r') loop

dbms_output.put_line(c.v_sql);

begin

execute immediate c.v_sql;

exception when others then

dbms_output.put_line(sqlerrm);

end;

end loop;

for c in (select 'alter table '||tname||' disable all triggers ' as v_sql from tab where tabtype='table') loop

dbms_output.put_line(c.v_sql);

begin

execute immediate c.v_sql;

exception when others then

dbms_output.put_line(sqlerrm);

end;

end loop;

end;

commit;

擴充套件延伸:

公司名稱:甲骨文股份****

外文名稱:oracle

總部地點:美國加州紅木城

經營範圍:資料庫軟體

公司口號:資訊驅動

年營業額:379億美元(2023年)

員工數:108492(2023年)

公司型別:上市公司

公司規模:世界百強

ceo:馬克·赫德

官網:http://www.oracle.com/

甲骨文公司

甲骨文公司,全稱甲骨文股份****(甲骨文軟體系統****),是全球最大的企業級軟體公司,總部位於美國加利福尼亞州的紅木灘。2023年正式進入中國市場。2023年,甲骨文已超越 ibm ,成為繼 microsoft 後全球第二大軟體公司。

2023年6月7日釋出的2023年美國《財富》500強,甲骨文公司排名第81位。2023年6月,《2023年brandz最具價值全球品牌100強》公佈,甲骨文公司排名第46位。

oracle如何建立使用者,Oracle如何建立使用者?

可按如下步驟建立使用者 1 開啟oracle第三方工具,如plsq,然後用一個具有dba許可權的使用者登入。2 然後開啟一個sql視窗。3 執行語句 create user 使用者名稱 identified by 密碼 其中使用者名稱需要為英文,密碼為數字或字母或英文符號或組合。4 執行完畢後,可按...

linux如何列出組中所有的使用者

linux如何列出組中所有的使用者,下面這個命令用來顯示group1組內使用者 head etc group grep n group1 其中,主要涉及兩個命令,head與grep,以下是這兩個命令的用法 head 命令,它是用來顯示開頭或結尾某個數量的文字區塊,head 用來顯示檔案的開頭至標準輸...

如何把Domino所有使用者接收和傳送的郵件都自動地拷貝到

可以來通過使用 郵件訊息日誌 和源 伺服器郵件規則 來實現。具體的步驟如下 1.開啟domino目錄資料庫 names.nsf 2.開啟伺服器的配置文件。3.在 路由器 tp 高階 記錄 的頁中,啟用 記錄 並配置相應的設定。如下圖。4.再轉到 路由器 tp 限制和控制 規則 的頁中,建立一個新的規...