Salut,
Je continue à travailler sur le Cloud Control et j'utilise particulièrement les vues de celui-ci, celles commençant par MGMT$...
Il existe plusieurs vues très intéressantes sur les bases, comme
  • MGMT$DB_TABLESPACES
  • MGMT$DB_DATAFILES
  • MGMT$DB_CONTROLFILES
  • MGMT$DB_DBNINSTANCEINFO
  • MGMT$DB_FEATUREUSAGE
  • MGMT$DB_INIT_PARAMS
  • MGMT$DB_LICENSE
  • MGMT$DB_REDOLOGS
  • MGMT$DB_ROLLBACK_SEGS
  • MGMT$DB_SGA
  • MGMT$DB_TABLESPACES_ALL
  • MGMT$DB_OPTIONS


J'ai eu cette liste sur https://docs.oracle.com/cd/E63000_01...htm#EMVWS32101
Mais, si j'interroge DBA_OBJECTS, je tombe sur 33 vues liées à la base :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
SQL> select distinct table_name from dba_tab_cols where table_name like 'MGMT$DB%' order by 1 ;
 
TABLE_NAME
------------------------------
MGMT$DB_ASSOC_DATA
MGMT$DB_AUTOTASK_CLIENT
MGMT$DB_CONTROLFILES
MGMT$DB_CONTROLFILES_ALL
MGMT$DB_CPU_USAGE
MGMT$DB_DATAFILES
MGMT$DB_DATAFILES_ALL
MGMT$DB_DBNINSTANCEINFO
MGMT$DB_DBNINSTANCEINFO_ALL
MGMT$DB_FEATURE_USAGE
MGMT$DB_FEATUREUSAGE
MGMT$DB_HA_BACKUP_REPORT
MGMT$DB_HA_CONFIG
MGMT$DB_HIGHWATERMARK
MGMT$DB_INIT_PARAMS
MGMT$DB_INIT_PARAMS_ALL
MGMT$DB_INST_ONLY_INFO
MGMT$DB_INVOBJ_CNT
MGMT$DB_LICENSE
MGMT$DB_LICENSE_ALL
MGMT$DB_OPTIONS
MGMT$DB_OPTIONS_ALL
MGMT$DB_REDOLOGS
MGMT$DB_REDOLOGS_ALL
MGMT$DB_ROLLBACK_SEGS
MGMT$DB_ROLLBACK_SEGS_ALL
MGMT$DB_SCHEDULER_JOBS
MGMT$DB_SERVICES_ECM
MGMT$DB_SGA
MGMT$DB_SGA_ALL
MGMT$DB_TABLESPACES
MGMT$DB_TABLESPACES_ALL
MGMT$DB_USERS
 
33 ligne(s) s▒lectionn▒e(s).

Une vue très intéressante est MGMT$DB_USERS qui permet d’interroger en une fois toutes les bases répertoriées dans le Cloud Control pour connaître leurs users :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
SQL> select 'Users actifs : ' AS "Statut", count(*) AS "Nb users"
from mgmt$db_users
where EXPIRY_DATE is null 
UNION 
select 'Users expirés : ' AS "Statut", count(*) AS "Nb users"
from mgmt$db_users
where EXPIRY_DATE is not null 
UNION
SELECT 'Nb Users : ' AS "Statut", count(*) AS "Nb users"
from mgmt$db_users
order by "Nb users" DESC;
 
Statut                Nb users
------------------- ----------
Nb Users :                3070
Users actifs :            2283
Users expirés :            787
Mais là où je suis choqué c'est que cette vue mgmt$db_users n'est visiblement pas connue de la doc Oracle et, même en faisant une recherche sous Google, je ne récupère aucune info dessus...
Je fais une recherche avec "MGMT$DB_USER" (avec deux guillemets) et Google me renvoi
"Aucun résultat trouvé pour "MGMT$DB_USER".
Résultats pour MGMT$DB_USER (sans guillemets)"

Si je cherche "MGMT$DB_SGA", j'ai 627 résultats donc certaines vues sont bien référencées.

Ma question, pour les DBA utilisant le Cloud est : est-ce que vous utilisez souvent ces vues pour faire un audit/état des lieux des bases depuis le point d'entrée qu'est la base du Cloud ou bien est-ce que vous trouvez que les écrans du Cloud sont suffisants pour gérer ces? J'ai l'impression que quasiment personne ne fait de SELECT sur ces vues alors que c'est super puissants, du niveau de DBA_USERS par exemple.