Heim  >  Artikel  >  Datenbank  >  So überprüfen Sie, welche Benutzer sich in Oracle befinden

So überprüfen Sie, welche Benutzer sich in Oracle befinden

青灯夜游
青灯夜游Original
2022-02-22 16:49:3539541Durchsuche

So fragen Sie die Benutzer in Oracle ab: 1. Führen Sie die Anweisung „select * from all_users;“ aus.

So überprüfen Sie, welche Benutzer sich in Oracle befinden

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Oracle 11g-Version, Dell G3-Computer.

Alle Benutzerinformationen in Oracle abfragen

1. Alle Benutzer anzeigen:

select * from dba_users; 
select * from all_users; 
select * from user_users;

2. Benutzer- oder Rollensystemberechtigungen anzeigen (Systemberechtigungen, die Benutzern oder Rollen direkt zugewiesen sind):

select * from dba_sys_privs; 
select * from user_sys_privs; (查看当前用户所拥有的权限)

3. Zeigen Sie die in der Rolle enthaltenen Berechtigungen an (nur die Rollen, die dem angemeldeten Benutzer gehören, können angezeigt werden)

sql>select * from role_sys_privs;

4. Zeigen Sie alle Rollen an:

select * from dba_tab_privs; 
select * from all_tab_privs; 
select * from user_tab_privs;

6. Benutzer anzeigen Oder die Rolle, die der Rolle gehört:

select * from dba_roles;

7. Überprüfen Sie, welche Benutzer über Sysdba- oder Sysoper-Systemberechtigungen verfügen (entsprechende Berechtigungen sind bei der Abfrage erforderlich)

select * from dba_role_privs; 
select * from user_role_privs;

8. Überprüfen Sie die Berechtigungen eines Benutzers in SqlPlus

select * from V$PWFILE_USERS

9, Oracles Methode zum Löschen aller Tabellen eines bestimmten Benutzers

SQL>select * from dba_sys_privs where grantee='username'; 其中的username即用户名要大写才行。
比如: SQL>select * from dba_sys_privs where grantee='TOM';

10. Benutzer löschen

select 'Drop table '||table_name||';' from all_tables where owner='要删除的用户名(注意要大写)';

11. Alle Tabellen unter dem aktuellen Benutzer abrufen:

drop user user_name cascade; 如:drop user SMCHANNEL CASCADE

12. Alle Tabellendaten unter einem bestimmten Benutzer löschen:

select table_name from user_tables;

13 Fremdschlüssel-Einschränkungsnamen in der ORACLE-Datenbank finden Sie in der Tabelle user_constraints.

wobei Constraint_type='R' eine Fremdschlüsseleinschränkung angibt.

select 'truncate table ' || table_name from user_tables;

Dann verwenden Sie SQL, um die Einschränkungsnamen aller Fremdschlüssel in der Datenbank herauszufinden:

启用外键约束的命令为:alter table table_name enable constraint constraint_name 
禁用外键约束的命令为:alter table table_name disable constraint constraint_name

14. ORACLE Fremdschlüssel und Trigger deaktivieren/aktivieren – Skripte aktivieren

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'

– Skripte deaktivieren

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;
Empfohlenes Tutorial: „

Oracle Tutorial

Das obige ist der detaillierte Inhalt vonSo überprüfen Sie, welche Benutzer sich in Oracle befinden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn