Gerenciar Atribuições e Privilégios ao Migrar para o Autonomous AI Database
Ao migrar de outros bancos de dados Oracle para o Autonomous AI Database, você pode notar diferenças na forma como as atribuições e os privilégios do sistema são suportados. Algumas atribuições e privilégios comuns em bancos de dados Oracle tradicionais não estão disponíveis no Autonomous AI Database. Isso ocorre principalmente porque:
- O Autonomous AI Database é totalmente gerenciado: muitas operações de gerenciamento de banco de dados executadas usando esses privilégios e atribuições são tratadas automaticamente, e concedê-las pode comprometer a segurança do Autonomous AI Database.
- Substituição e aprimoramento por novas atribuições: determinadas atribuições mais antigas são substituídas ou estendidas por atribuições específicas do Autonomous AI Database que fornecem recursos equivalentes.
Para garantir uma experiência de migração perfeita, o Autonomous AI Database gerencia automaticamente atribuições e privilégios não suportados por:
- Ignorando instruções não suportadas: Instruções que se referem a atribuições ou privilégios não suportados no Autonomous AI Database são ignoradas.
- Mapeamento para equivalentes suportados: Em muitos casos, as atribuições não suportadas são substituídas por seus equivalentes correspondentes do Autonomous AI Database, como substituir a atribuição
DBApela atribuiçãoPDB_DBA.
Essas conversões são realizadas de forma transparente. Após a migração, você pode revisar instruções convertidas automaticamente na exibição DBA_CONVERTED_STATEMENTS. A tabela a seguir lista atribuições de outros bancos de dados Oracle e seus equivalentes mapeados no Autonomous AI Database:
| Atribuição do Banco de Dados de Origem | Atribuição Mapeada no Autonomous AI Database |
|---|---|
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 |
Consulte a seção Limitações desta página para obter atribuições e privilégios que não são suportados no Autonomous AI Database e, portanto, não podem ser resolvidos durante as operações de migração ou importação.
Estes são os principais benefícios do tratamento automático de atribuições e privilégios durante a migração para o Autonomous AI Database:
- Migração simples: O ajuste automático de atribuições e privilégios não suportados reduz a complexidade da migração e ajuda a evitar falhas devido a operações de Concessão ou Revogação não suportadas.
- Esforço manual reduzido: elimina a necessidade de revisão manual e edição de instruções SQL, permitindo migrações mais rápidas e sem erros.
- Continuidade operacional: ao suprimir erros e mapear atribuições, o Autonomous AI Database garante que as operações de negócios não sejam interrompidas por problemas relacionados a privilégios.
- Transparência aprimorada: todos os ajustes automáticos podem ser auditados por meio da exibição
DBA_CONVERTED_STATEMENTS, fornecendo uma visão clara das alterações feitas durante a migração.
Consultar e Gerenciar Instruções Convertidas
Você pode consultar a view DBA_CONVERTED_STATEMENTS para revisar instruções SQL originais e convertidas, juntamente com a ação tomada durante a migração.
Você pode verificar quais instruções Grant e Revoke foram modificadas ou ignoradas consultando a view DBA_CONVERTED_STATEMENTS. Essa view exibe a instrução SQL original, a instrução convertida, se aplicável, e a ação executada, permitindo auditar alterações e garantir o alinhamento com as atribuições e os privilégios suportados no Autonomous AI Database.
Os exemplos a seguir mostram como consultar e interpretar essas informações.
Exemplo 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
DBA_CONVERTED_STATEMENTS;
A saída de amostra mostra que a instrução SQL original foi substituída por uma nova instrução contendo apenas atribuições e privilégios suportados no 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
-----------------------------------------------------------------------------------------------------------------------------------------------------------
REPLACED
As atribuições DATAPUMP_EXP_FULL_DATABASE e DATAPUMP_IMP_FULL_DATABASE não são aplicáveis no Autonomous AI Database. Essas atribuições são mapeadas automaticamente para as atribuições DATAPUMP_CLOUD_EXP e DATAPUMP_CLOUD_IMP, respectivamente.
Exemplo 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
DBA_CONVERTED_STATEMENTS;
A saída de amostra mostra que a instrução SQL original foi ignorada porque nenhuma das atribuições ou privilégios especificados é suportada no Autonomous AI Database.
ORIGINAL_SQL_TEXT
--------------------------------------------------------------------------------
grant CREATE LIBRARY, CDB_DBA, EM_EXPRESS_ALL, XDB_WEBSERVICES from usr1
CONVERTED_SQL_TEXT
--------------------------------------------------------------------------------
(null)
ACTION_TAKEN
--------------------------------------------------------------------------------
IGNORED
A saída mostra que a instrução SQL original que solicita privilégios como CREATE LIBRARY, EM_EXPRESS_ALL e XDB_WEBSERVICES foi ignorada. Essas atribuições e privilégios não são suportados no Autonomous AI Database. Como resultado, o SQL convertido correspondente é nulo e a ação executada é marcada como IGNORED.
original_sql_texté a instrução SQL original, até os primeiros 1000 caracteres.converted_sql_texté a instrução SQL convertida, até os primeiros 1000 caracteres.action_takenindica se a instrução eraIGNOREDouREPLACED.
Consulte PURGE_CONVERTED_STMTS View para obter mais informações.
Após revisar as instruções convertidas na view DBA_CONVERTED_STATEMENTS, você pode remover todas as instruções ou apenas as mais antigas que um período de retenção especificado executando o procedimento purge_converted_stmts. Por exemplo:
BEGIN
DBMS_CLOUD_ADMIN.PURGE_CONVERTED_STMTS(
retention_date => SYSTIMESTAMP - INTERVAL '1' DAY
);
END;
/
Isso remove as entradas da view DBA_CONVERTED_STATEMENTS com mais de um dia, com base no timestamp atual.
Consulte PURGE_CONVERTED_STMTS Procedure para obter mais informações.
Limitações
As atribuições e os privilégios a seguir não são suportados ao migrar de outros bancos de dados Oracle para o Autonomous AI Database.
Privilégios:
SYSDBASYSOPERGRANT ANY PRIVILEGECREATE LIBRARYCREATE ANY LIBRARYEXPORT FULL DATABASEIMPORT FULL DATABASECREATE EXTERNAL JOBSYSBACKUPSYSDGSYSKMADMINISTER KEY MANAGEMENTFLASHBACK ARCHIVE ADMINISTERINHERIT ANY REMOTE PRIVILEGESCREATE CREDENTIALCREATE ANY CREDENTIALSYSRACTEXT DATASTORE ACCESSENABLE DIAGNOSTICSCREATE TRUE CACHE
Atribuições:
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