Gérer les rôles et les privilèges lors de la migration vers une base de données d'IA autonome
Décrit comment les rôles et les privilèges sont gérés lors de la migration vers une base de données d'IA autonome, y compris les détails sur les rôles non pris en charge, la conversion de privilèges et le traitement automatisé lors de la migration.
Lors de la migration d'autres bases de données Oracle vers Autonomous AI Database, vous remarquerez peut-être des différences dans la façon dont les rôles et les privilèges système sont pris en charge. Certains rôles et privilèges communs aux bases de données Oracle traditionnelles ne sont pas disponibles dans la base de données de l'IA autonome. Ceci est principalement dû au fait que :
-
La base de données d'IA autonome est entièrement gérée : de nombreuses opérations de gestion de base de données effectuées à l'aide de ces privilèges et rôles sont traitées automatiquement, et leur octroi pourrait compromettre la sécurité de la base de données d'IA autonome.
-
Remplacement et amélioration par de nouveaux rôles : Certains rôles plus anciens sont remplacés ou étendus par des rôles propres à la base de données d'IA autonome qui offrent des capacités équivalentes.
Pour assurer une expérience de migration transparente, Autonomous AI Database gère automatiquement les rôles et les privilèges non pris en charge de l'une des façons suivantes :
-
Énoncés non pris en charge ignorés : Les énoncés faisant référence à des rôles ou à des privilèges non pris en charge dans la base de données d'IA autonome sont ignorés.
-
Mappage aux équivalents pris en charge : Dans de nombreux cas, les rôles non pris en charge sont remplacés par les équivalents de base de données IA autonome correspondants, tels que le remplacement du rôle
DBApar le rôlePDB_DBA.
Ces conversions sont effectuées de manière transparente et vous pouvez vérifier tous les énoncés convertis automatiquement dans la vue DBA_CONVERTED_STATEMENTS après la migration. Le tableau présente une liste des rôles provenant d'autres bases de données Oracle et de leurs équivalents mappés dans Autonomous AI Database :
| Rôle de la base de données source | Rôle mappé dans la base de données autonome sur l'IA |
|---|---|
DBA |
PDB_DBA |
DATAPUMP_EXP_FULL_DATABASE |
DATAPUMP_CLOUD_EXP |
DATAPUMP_IMP_FULL_DATABASE |
DATAPUMP_CLOUD_IMP |
EXP_FULL_DATABASE |
DATAPUMP_CLOUD_EXP |
IMP_FULL_DATABASE |
DATAPUMP_CLOUD_IMP |
Voir Limitations pour obtenir la liste des rôles et privilèges qui ne sont pas pris en charge sur la base de données d'IA autonome et qui, par conséquent, ne peuvent pas être résolus lors des opérations de migration ou d'importation.
Voici les principaux avantages du traitement automatique des rôles et des privilèges lors de la migration vers Autonomous AI Database :
-
Migration transparente : L'ajustement automatique des rôles et privilèges non pris en charge réduit la complexité de la migration et permet d'éviter les échecs dus à des opérations Grant ou Revoke non prises en charge.
-
Réduction des tâches manuelles : élimine la nécessité de réviser et d'éditer manuellement les instructions SQL, ce qui permet des migrations plus rapides et sans erreur.
-
Continuité opérationnelle : En supprimant les erreurs et les rôles de mappage, Autonomous AI Database s'assure que les opérations commerciales ne sont pas interrompues par des problèmes liés aux privilèges.
-
Transparence améliorée : Tous les ajustements automatiques peuvent être vérifiés au moyen de la vue
DBA_CONVERTED_STATEMENTS, ce qui fournit des informations claires sur les modifications apportées lors de la migration.
Interroger et gérer les énoncés convertis
Vous pouvez interroger la vue sys.converted_stmts$ pour vérifier les énoncés SQL initiaux et convertis, ainsi que l'action effectuée lors de la migration.
Vous pouvez vérifier quels énoncés Grant et Revoke ont été modifiés ou ignorés lors de la migration en interrogeant la vue sys.converted_stmts$. Cette vue affiche l'énoncé SQL initial, l'énoncé converti, le cas échéant, et l'action effectuée, ce qui vous permet de vérifier les modifications et de garantir l'alignement avec les rôles et privilèges pris en charge par la base de données d'intelligence artificielle autonome.
Les exemples suivants montrent comment interroger et interpréter ces informations :
Exemple 1 :
SELECT
DBMS_LOB.SUBSTR(original_sql_text, 1000, 1) AS original_sql_text,
DBMS_LOB.SUBSTR(converted_sql_text, 1000, 1) AS converted_sql_text,
action_taken
FROM
sys.converted_stmts$;L'exemple de sortie montre que l'énoncé SQL initial a été remplacé par un nouvel énoncé contenant uniquement les rôles et privilèges pris en charge dans Autonomous AI Database.
ORIGINAL_SQL_TEXT
-----------------------------------------------------------------------------------------------------------------------------------------------------------
grant DBA, DATAPUMP_EXP_FULL_DATABASE, DATAPUMP_IMP_FULL_DATABASE, CDB_DBA, EM_EXPRESS_ALL, CREATE ANY LIBRARY, SYSDBA, ALTER SESSION, ALTER SYSTEM to usr1
CONVERTED_SQL_TEXT
-----------------------------------------------------------------------------------------------------------------------------------------------------------
GRANT ALTER SYSTEM, ALTER SESSION, UNLIMITED TABLESPACE, DATAPUMP_CLOUD_EXP, DATAPUMP_CLOUD_IMP, PDB_DBA TO USR1
ACTION_TAKEN
-----------------------------------------------------------------------------------------------------------------------------------------------------------
REPLACEDLes rôles DATAPUMP_EXP_FULL_DATABASE et DATAPUMP_IMP_FULL_DATABASE ne sont pas applicables dans Autonomous AI Database. Ces rôles sont automatiquement mappés aux rôles DATAPUMP_CLOUD_EXP et DATAPUMP_CLOUD_IMP, respectivement.
Exemple 2 :
SELECT
DBMS_LOB.SUBSTR(original_sql_text, 1000, 1) AS original_sql_text,
DBMS_LOB.SUBSTR(converted_sql_text, 1000, 1) AS converted_sql_text,
action_taken
FROM
sys.converted_stmts$;L'exemple de sortie montre que l'énoncé SQL initial a été ignoré car aucun des rôles ou privilèges spécifiés n'est pris en charge dans la base de données d'intelligence artificielle autonome.
ORIGINAL_SQL_TEXT
--------------------------------------------------------------------------------
grant CREATE LIBRARY, CDB_DBA, EM_EXPRESS_ALL, XDB_WEBSERVICES from usr1
CONVERTED_SQL_TEXT
--------------------------------------------------------------------------------
(null)
ACTION_TAKEN
--------------------------------------------------------------------------------
IGNOREDLa sortie montre que l'énoncé SQL initial demandant des privilèges tels que CREATE LIBRARY, EM_EXPRESS_ALL et XDB_WEBSERVICES a été ignoré. Ces rôles et privilèges ne sont pas pris en charge dans Autonomous AI Database. Par conséquent, l'énoncé SQL converti correspondant est nul et l'action effectuée est marquée comme IGNORED.
-
original_sql_textest l'énoncé SQL initial (jusqu'aux 1000 premiers caractères). -
converted_sql_textest l'énoncé SQL converti (jusqu'aux 1000 premiers caractères). -
action_takenindique si l'énoncé étaitIGNOREDouREPLACED.
Pour plus d'informations, voir Vue PURGE_CONVERTED_STMTS.
Après avoir vérifié les énoncés convertis dans la vue sys.converted_stmts$, vous pouvez supprimer tous les énoncés ou uniquement ceux qui datent d'une période de conservation spécifiée en exécutant la procédure purge_converted_stmts selon les besoins. Par exemple :
BEGIN
DBMS_CLOUD_ADMIN.PURGE_CONVERTED_STMTS(
retention_date => SYSTIMESTAMP - INTERVAL '1' DAY
);
END;
/Cela supprime les entrées de la vue sys.converted_stmts$ qui datent de plus d'un jour, en fonction de l'horodatage courant.
Pour plus d'informations, voir PURGE_CONVERTED_STMTS.
Limites
Répertorie les rôles et privilèges qui ne sont pas pris en charge lors de la migration d'autres bases de données Oracle vers Autonomous AI Database.
Privilèges :
SYSDBASYSOPERGRANT ANY PRIVILEGECREATE LIBRARYCREATE ANY LIBRARYEXPORT FULL DATABASEIMPORT FULL DATABASECREATE EXTERNAL JOBSYSBACKUPSYSDGSYSKMADMINISTER KEY MANAGEMENTFLASHBACK ARCHIVE ADMINISTERINHERIT ANY REMOTE PRIVILEGECREATE CREDENTIALCREATE ANY CREDENTIALSYSRACTEXT DATASTORE ACCESSENABLE DIAGNOSTICSCREATE TRUE CACHE
Rôles :
CDB_DBAEM_EXPRESS_ALLEM_EXPRESS_BASICXDB_SET_INVOKERXDB_WEBSERVICESXDB_WEBSERVICES_WITH_PUBLICXDB_WEBSERVICES_OVER_HTTPEXECUTE_CATALOG_ROLESCHEDULER_ADMINOEM_MONITORGDS_CATALOG_SELECTHS_ADMIN_EXECUTE_ROLEDBMS_MDX_INTERNALEJBCLIENTJMXSERVERGGSYS_ROLEXDBADMIN