Nesta página, descrevemos como configurar o banco de dados de origem do Oracle para uma migração única com o Database Migration Service. Antes de usar o Database Migration Service para extrair dados do banco de dados Oracle de origem, conceda os privilégios apropriados à conta de usuário que será usada para se conectar ao banco de dados e acessar objetos de esquema e código.
Por padrão, o Database Migration Service tenta acessar todas as definições de objeto por meio de
DBA_VIEWS.
O acesso ao DBA_VIEWS é concedido com o privilégio SELECT ANY DICTIONARY.
Se as visualizações de DBA não estiverem acessíveis para a conta de usuário de migração,
o Database Migration Service vai usar
ALL_VIEWS.
Essa abordagem oferece o maior grau de flexibilidade para
definir um modelo de segurança que melhor corresponda aos seus requisitos.
Para ver as etapas de configuração exatas, consulte a seção do seu banco de dados de origem:
- Configurar um banco de dados do Amazon RDS para Oracle
- Configurar um banco de dados Oracle autogerenciado
- Configurar um banco de dados plugável autogerenciado da Oracle
Configurar um banco de dados do Amazon RDS para Oracle
Para configurar os bancos de dados de origem do Amazon RDS para uma migração única, conceda à conta de usuário que o Database Migration Service vai usar os privilégios apropriados.
Em cada comando, substitua USER_NAME pelo nome
da conta de usuário usada na migração. A execução desses comandos concede
privilégios de leitura de V$DATABASE, o que é necessário para a validação.
GRANT CONNECT TO USER_NAME; GRANT CREATE SESSION TO USER_NAME; GRANT SELECT ANY TABLE TO USER_NAME; GRANT SELECT ANY DICTIONARY TO USER_NAME; exec rdsadmin.rdsadmin_util.grant_sys_object('V_$DATABASE','USER_NAME','SELECT');
Configurar um banco de dados Oracle
Para configurar os bancos de dados de origem do Oracle para uma migração única, conceda à conta de usuário que o Database Migration Service usará os privilégios apropriados.
Em cada comando, substitua USER_NAME pelo nome
da conta de usuário usada na migração. A execução desses comandos concede
privilégios de leitura de V$DATABASE, o que é necessário para a validação.
GRANT CONNECT TO USER_NAME; GRANT CREATE SESSION TO USER_NAME; GRANT SELECT ANY TABLE TO USER_NAME; GRANT SELECT ANY DICTIONARY TO USER_NAME; GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;
Configurar um banco de dados conectável (PDB) da Oracle
O Database Migration Service é compatível com a arquitetura multilocatário da Oracle, em que um único banco de dados de contêiner (CDB) contém um ou mais bancos de dados plugáveis (PDBs). Cada banco de dados plugável é um banco de dados independente com um ID e um nome exclusivos, e pode ser gerenciado de forma independente.
Para configurar um banco de dados plugável do Oracle para uso com o Database Migration Service, siga estas etapas:
- Crie um
usuário comum.
Um usuário comum tem a mesma identidade no contêiner
CDB$ROOTe nos bancos de dados plugáveis. Um usuário comum pode se conectar e realizar operações na raiz e em qualquer banco de dados plugável em que tenha privilégios. O nome de usuário comum precisa começar comC##ouc##. - Conceda os privilégios apropriados ao usuário comum que será usado para se conectar ao banco de dados. São necessárias permissões diferentes nos níveis de contêiner e banco de dados conectável do
CDB$ROOT.Em cada comando, substitua
USER_NAMEpelo nome da conta de usuário que você usa para a migração. A execução desses comandos concede privilégios para ler deV$DATABASE, o que é necessário para a validação.- Conecte-se ao contêiner
CDB$ROOTe execute os seguintes comandos:GRANT CREATE SESSION TO USER_NAME; GRANT SET CONTAINER TO USER_NAME; GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME; GRANT EXECUTE_CATALOG_ROLE TO USER_NAME;
- Conecte-se ao banco de dados plugável e execute os seguintes comandos:
GRANT CREATE SESSION TO USER_NAME; GRANT SET CONTAINER TO USER_NAME; GRANT SELECT ANY TABLE TO USER_NAME; GRANT SELECT ANY DICTIONARY TO USER_NAME; GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;
- Conecte-se ao contêiner