Oracle 查找非系统用户结合了10,11,12,19

oracle 12开始有了INHERITED='YES';字段来区分系统用户

select username from dba_users where INHERITED='YES';

对于12以下的版本,按created日期字段筛选会发现创建时间间隔比较大,好区分。

本人当前有个需求需要找出所有数据库的非系统用户,来做数据库合理性分析,批量扫的话,需要尽可能的遍历所有情况,于是我结合了当前使用的不同Oracle版本,每个版本在两个数据库中筛选用户,得出了一下查询语句,供大家参考。

select username from dba_users where username not in ('SYSTEM','SYS','OUTLN','DIP','ORACLE_OCM','DBSNMP','APPQOSSYS','WMSYS','EXFSYS','CTXSYS','XDB','ANONYMOUS','XS$NULL','ORDSYS','SI_INFORMTN_SCHEMA','ORDDATA','MDSYS','ORDPLUGINS','OLAPSYS','MDDATA','SPATIAL_WFS_ADMIN_USR','SPATIAL_CSW_ADMIN_USR','SYSMAN','MGMT_VIEW','APEX_PUBLIC_USER','APEX_030200','FLOWS_FILES','OWBSYS','OWBSYS_AUDIT','SCOTT','OJVMSYS','LBACSYS','SYS$UMF','DBSFWUSER','GGSYS','DVF','DVSYS','GSMADMIN_INTERNAL','GSMCATUSER','REMOTE_SCHEDULER_AGENT','SYSBACKUP','GSMUSER','SYSRAC','AUDSYS','SYSKM','SYSDG','GSMROOTUSER')

你可能感兴趣的:(oracle,数据库)