Je veux savoir quels utilisateurs ont des privilèges SYS et SYSDBA avant l'exploitation d'exportation/importation.
J'ai beaucoup cherché mais je n'ai pas pu trouver.
Comme votre question:
I want to know which users have SYS and SYSDBA privilege before export/import operation.
Sysdba est des rôles - ce ne sont pas des utilisateurs, pas des schémas. Le rôle SYSDBA est comme "racine" sur UNIX ou "Administrateur" sous Windows. Il voit tout, peut faire tout. En interne, si vous vous connectez à SYSDBA, votre nom de schéma semblera être SYS.
Selon Burleson consulting blog
Afficher les utilisateurs avec SYSDBA ici
La vue V $ PWFILE_USERS contient une liste de tous les utilisateurs qui ont obtenu le privilège SYSDBA ou SYSOPER.
SQL> desc v$pwfile_users;
Name Null? Type
----------------------------------------- -------- ----------------------------
USERNAME VARCHAR2(30)
SYSDBA VARCHAR2(5)
SYSOPER VARCHAR2(5)
SYSASM VARCHAR2(5)
SQL>
SQL> select * from v$pwfile_users;
USERNAME SYSDB SYSOP SYSAS
------------------------------ ----- ----- -----
SYS TRUE TRUE FALSE
TOM TRUE FALSE FALSE
En 11g, il y a une nouvelle colonne dans V $ pwfile_USERS pour le sysasme privilège:
SYS AS SYSDBA @ orcl11 SQL> select * from v$pwfile_users;
USERNAME SYSDB SYSOP SYSAS
------------------------------ ----- ----- -----
SYS TRUE TRUE FALSE
Pour plus de référence par Tom Kyte
ici
Il n'y a pas de privilège SYS à la place il y a un utilisateur SYS. Pour énumérer les utilisateurs qui ont SYSDBA Privilege, utilisez la requête suivante.
SQL> Conn sys/mot de passe comme sysdba [.____] SQL> SELECT * de V $ pwfile_utilisateurs; [.____]
Il existe de nombreuses situations où l'administrateur souhaitait révoquer des privilèges de DBA accordés à l'utilisateur. En utilisant ci-dessous la requête, vous pouvez trouver les utilisateurs ayant des rôles DBA dans Oracle :
SQL> select * from dba_role_privs where granted_role='DBA';
GRANTEE GRANTED_ROLE ADM DEF
--------- ------------ --- ---
SYS DBA YES YES
SYSTEM DBA YES YES