Com os espaços de trabalho de conversão, é possível corrigir problemas de conversão, modificar objetos com o editor interativo e aplicar o esquema convertido ao banco de dados de destino. Nesta página, você encontra uma visão geral de todas as ações que podem ser realizadas com os espaços de trabalho de conversão.
Atualização de espaços de trabalho para a conversão automática com tecnologia do Gemini
Os espaços de trabalho de conversão atualizados oferecem acesso aos recursos de conversão automática com tecnologia do Gemini e visão geral da conversão.
Para fazer upgrade do espaço de trabalho de conversão, faça o seguinte:
- No console Google Cloud , acesse Espaços de trabalho de conversão e selecione seu espaço de trabalho.
-
Clique em Conheça os recursos para fazer upgrade e aceite a oferta na caixa de diálogo:
Figura 1. Oferta de upgrade do espaço de trabalho de conversão. (clique para ampliar)
Analisar o status da conversão


Na seção Visão geral da conversão, você pode conferir todas as informações sobre a conversão de esquema: o número e o tipo de objetos convertidos, o status da conversão (incluindo problemas abertos ou resolvidos) e a lista de melhorias fornecidas pela conversão automática assistida pelo Gemini.
Você também pode usar os filtros em cada categoria para restringir o número de objetos mostrados na visualização em árvore por tipo, gravidade do problema, problemas pendentes ou resolvidos. A visão geral da conversão só está disponível para espaços de trabalho de conversão atualizados.
Para ver informações detalhadas sobre o progresso da conversão de código e esquema, faça o seguinte:
- No console Google Cloud , acesse Espaços de trabalho de conversão e selecione seu espaço de trabalho.
- Na guia Oracle, use a visualização em árvore do esquema para fazer uma das seguintes ações:
- Selecione Oracle para conferir as informações de todos os objetos em todos os esquemas convertidos no seu espaço de trabalho.
- Selecione um esquema ou objeto específico para conferir os detalhes da conversão de um subconjunto de objetos.
- Na guia Visão geral da conversão, confira as informações na seção Resumo de objetos convertidos. Use o botão Mostrar objetos para aplicar qualquer filtro à visualização em árvore na guia Oracle.
- Use a guia Problemas de conversão para começar a trabalhar com os problemas de conversão. Para mais informações, consulte Corrigir problemas de conversão.
Remover objetos do esquema de origem
Remova objetos do esquema de origem para excluir da conversão. É possível adicionar objetos removidos depois, se necessário.
- No console Google Cloud , acesse Espaços de trabalho de conversão e selecione seu espaço de trabalho.
- Na guia Oracle, ao lado do objeto que você quer remover, selecione > Remover. Mais
- Na caixa de diálogo de confirmação Remover objeto, clique em Remover.
- Atualize o esquema convertido. Clique em
É possível inspecionar o esquema convertido na guia Rascunho do AlloyDB para PostgreSQL.
Converter fonte.
O Database Migration Service agora analisa suas mudanças e gera o esquema do PostgreSQL atualizado.
Adicionar objetos ao esquema de origem
É possível adicionar objetos removidos anteriormente do esquema de origem para incluir na conversão.
- No console Google Cloud , acesse Espaços de trabalho de conversão e selecione seu espaço de trabalho.
- Na guia Oracle, clique em Adicionar objetos.
- Na seção Adicionar objetos, use a lista de origem para selecionar
todas as entidades que você quer adicionar ao esquema de origem.
Use o botão Filtrar objetos para reduzir o número de objetos mostrados. Consulte Filtrar objetos na visualização do esquema de origem
- Clique em Adicionar objetos.
- Atualize o esquema convertido. Clique em
É possível inspecionar o esquema convertido na guia Rascunho do AlloyDB para PostgreSQL.
Converter fonte.
O Database Migration Service agora analisa suas mudanças e gera o esquema do PostgreSQL atualizado.
Extrair snapshot do esquema de origem e do código
É possível extrair o esquema e o código do banco de dados de origem para o espaço de trabalho de conversão a qualquer momento. Ao extrair a origem, você tem a oportunidade de adicionar novos objetos ou atualizar os que já existem na conversão.
A extração do esquema e do código atualizados do banco de dados não redefine os mapeamentos personalizados que existem no espaço de trabalho de conversão, a menos que você escolha remover mapeamentos personalizados.
Além disso, extrair a origem não substitui as mudanças de SQL nos objetos de código. É possível redefinir essas mudanças diretamente no nível do objeto.
- No console Google Cloud , acesse Espaços de trabalho de conversão e selecione seu espaço de trabalho.
- Clique em > Extrair snapshot do esquema de origem outra vez. Editar configuração
- Na caixa de diálogo, faça o seguinte:
- Opcional: selecione Redefinir mapeamento personalizado para remover os mapeamentos personalizados e as modificações DDL atuais.
- Clique em Extrair snapshot do esquema.
O Database Migration Service extrai o novo snapshot do banco de dados de origem.
- Atualize o esquema convertido. Clique em
É possível inspecionar o esquema convertido na guia Rascunho do AlloyDB para PostgreSQL.
Converter fonte.
O Database Migration Service agora analisa suas mudanças e gera o esquema do PostgreSQL atualizado.
Usar mapeamentos de conversão personalizados
É possível personalizar a lógica de conversão com um arquivo de mapeamento de conversão. O arquivo de mapeamento de conversão é um arquivo de texto que contém instruções precisas (chamadas de diretivas de conversão) sobre como seus objetos do Oracle devem ser convertidos em objetos do PostgreSQL.
Escrever um arquivo de mapeamento personalizado
Para escrever seus arquivos de mapeamento personalizados:
Use o arquivo de configuração de exemplo como ponto de referência.
Escreva seus mapeamentos de conversão personalizados em um editor de texto e faça upload deles no espaço de trabalho de conversão.
Adicionar arquivos de mapeamento personalizados
Para adicionar um arquivo de mapeamento de conversão personalizado ao seu espaço de trabalho, faça o seguinte:
- No console Google Cloud , acesse Espaços de trabalho de conversão e selecione seu espaço de trabalho.
- Na página do editor de conversão, selecione > Personalizar mapeamento com um arquivo de configuração. Editar configuração
- Na caixa Arquivo de configuração, clique em Procurar e use o seletor de arquivos do sistema para escolher o arquivo de configuração.
- Clique em > Criar mapeamento. Adicionar arquivo
Remover arquivos de mapeamento personalizados
Para remover um arquivo de mapeamento de conversão personalizada do seu espaço de trabalho, faça o seguinte:
- No console Google Cloud , acesse Espaços de trabalho de conversão e selecione seu espaço de trabalho.
- Na página do editor de conversões, selecione > Remover mapeamento personalizado. Editar configuração
Analisar os resultados da conversão
Depois de realizar a conversão de origem, você pode analisar os resultados e possíveis problemas de cada objeto convertido na área do editor do espaço de trabalho. Também é possível usar a Google Cloud CLI para salvar todos os resultados e problemas em massa em um arquivo de texto.
Console
No console Google Cloud , acesse Espaços de trabalho de conversão.
Clique no nome de exibição do espaço de trabalho de conversão que você quer usar.
O editor do espaço de trabalho de conversão é aberto.
Selecione a guia Oracle e localize o objeto para revisar os resultados da conversão na tabela de visualização em árvore.
Selecione o objeto. Use as guias SQL e Problemas de conversão para analisar a conversão.
Se você determinar que o problema é um aviso e não exige nenhuma ação, marque-o como resolvido. Caso contrário, investigue mais a fundo e corrija o problema no editor de conversões.
gcloud
Com a Google Cloud CLI, é possível imprimir todos os resultados ou problemas da conversão no terminal. Redirecione a saída para um arquivo para facilitar as revisões em massa de objetos.
Receber uma lista de resultados de conversão
A CLI gcloud mostra os resultados da conversão no terminal na forma de instruções da linguagem de definição de dados (DDL). Para salvar os resultados da conversão em um arquivo, execute o seguinte comando:
gcloud database-migration conversion-workspaces describe-ddls \
CONVERSION_WORKSPACE_ID \
--region=REGION_ID \
> OUTPUT_FILE_PATH
Substitua:
CONVERSION_WORKSPACE_ID
com o identificador do espaço de trabalho de conversão. Para informações sobre como recuperar identificadores de espaços de trabalho de conversão, consulte Ver detalhes do espaço de trabalho de conversão.REGION_ID
com o nome da região em que o espaço de trabalho de conversão está localizado.OUTPUT_FILE_PATH
com o caminho para o arquivo de texto em que você quer salvar a saída.Exemplo:
gcloud database-migration conversion-workspaces describe-issues \ my-conversion-workspace \ --region=us-central1 \ > ./my-conversion-issues.txt
Resultado:
Os resultados da conversão de esquema são salvos em um formato de texto em que a primeira linha diz
DDLs
e as linhas subsequentes são ocupadas por instruções SQL:DDLs CREATE SCHEMA IF NOT EXISTS "SCHEMA1"; ALTER TABLE "SCHEMA1"."EMPLOYEES" ADD CONSTRAINT PK_ID PRIMARY KEY ("ID"); CREATE OR REPLACE FUNCTION mockschema.func_test_datatype(str1 VARCHAR(65000)) RETURNS DECIMAL LANGUAGE plpgsql AS $$ DECLARE str2 VARCHAR(100); BEGIN SELECT employees.first_name INTO STRICT STR2 FROM mockschema.employees WHERE employees.employee_id = CAST(FUNC_TEST_DATATYPE.str1 as DECIMAL) ; RAISE NOTICE '%', concat('Input : ', FUNC_TEST_DATATYPE.str1, ' Output : ', str2); RETURN 0; END; $$; CREATE OR REPLACE PROCEDURE greetings AS BEGIN dbms_output.put_line('Hello World!'); END; CREATE SYNONYM TABLE "SCHEMA1"."SYNONYM1" ON "SCHEMA1"."EMPLOYEES"; CREATE OR REPLACE VIEW "SCHEMA1"."VIEW1" AS SELECT * FROM JOBS;
Receber uma lista de problemas de conversão
Para salvar problemas de conversão em um arquivo, execute o seguinte comando:
gcloud database-migration conversion-workspaces describe-issues \
CONVERSION_WORKSPACE_ID \
--region=REGION_ID \
> OUTPUT_FILE_PATH
Substitua:
-
CONVERSION_WORKSPACE_ID
com o identificador do espaço de trabalho de conversão. Para informações sobre como recuperar identificadores de espaços de trabalho de conversão, consulte Ver detalhes do espaço de trabalho de conversão. -
REGION_ID
com o nome da região em que o espaço de trabalho de conversão está localizado. -
OUTPUT_FILE_PATH
com o caminho para o arquivo de texto em que você quer salvar a saída.
Exemplo:
gcloud database-migration conversion-workspaces describe-issues \
my-conversion-workspace \
--region=us-central1 \
> ./my-conversion-issues.txt
Resultado:
Todos os problemas de conversão contidos no seu espaço de trabalho são salvos em um formato de texto em que a primeira linha contém cabeçalhos de coluna e cada linha subsequente contém um problema de conversão separado:
PARENT NAME ENTITY_TYPE ISSUE_TYPE ISSUE_SEVERITY ISSUE_CODE ISSUE_MESSAGE
SCHEMA1 EMPLOYEES TABLE DDL ERROR 500 unable to parse DDL.
SCHEMA1 EMPLOYEES TABLE CONVERT WARNING 206 no conversion done.
SCHEMA1 STORED_PROCEDURE1 STORED_PROCEDURE DDL ERROR 500 invalid DDL.
SCHEMA1 SYNONYM1 SYNONYM CONVERT WARNING 206 synonym warning message.
Corrigir problemas de conversão
O Database Migration Service talvez não consiga converter automaticamente toda a origem. Para a maioria dos objetos do Oracle, é possível usar o editor de conversão diretamente no Database Migration Service para ajustar o SQL gerado. Para outros, talvez seja necessário mudar o objeto diretamente no banco de dados de origem e depois extrair o snapshot de origem novamente.
Para conferir uma lista completa de objetos que o Database Migration Service permite editar diretamente no espaço de trabalho de conversão, consulte Objetos Oracle editáveis.
Para corrigir os problemas de conversão encontrados no seu esquema, faça o seguinte:
- No console Google Cloud , acesse Espaços de trabalho de conversão e selecione seu espaço de trabalho.
-
Analise os resultados da conversão e identifique possíveis problemas.
Use o console Google Cloud para analisar objetos individuais ou a CLI gcloud para analisar todos os objetos em massa.
-
Dependendo do tipo de problema, você pode corrigi-lo diretamente no editor do espaço de trabalho ou fornecer um arquivo de mapeamento de conversão personalizado. Abra as seções a seguir para mais informações.
Seja qual for o tipo de problema, tente usar o assistente de conversão com tecnologia do Gemini para encontrar uma solução. Para mais informações, consulte Usar o assistente de conversão do Gemini. Se você determinar que o problema é um aviso e não exige nenhuma ação, marque-o como resolvido.
Corrigir problemas com objetos compatíveis com o editor integrado
Para corrigir problemas encontrados com objetos compatíveis no editor do espaço de trabalho, faça o seguinte:
- Encontre o problema na visualização em árvore Oracle e selecione a guia Código.
- Use o editor de SQL para atualizar o código gerado.O Database Migration Service não valida a correção do código SQL adicionado no editor.
Corrigir problemas com objetos que não são compatíveis com o editor integrado
Para corrigir problemas encontrados com objetos que não são compatíveis com o editor do espaço de trabalho, faça o seguinte:
- Atualizar objetos com falha na sua origem
- Em alguns casos, talvez seja necessário mudar a instrução do Oracle diretamente no banco de dados de origem. Faça o seguinte:
- Atualize o esquema e o código diretamente no banco de dados de origem.
- Extraia as fontes atualizadas para o Database Migration Service.
- Converta as fontes novamente e verifique se os problemas persistem.
- Fornecer outros mapeamentos com um arquivo de mapeamento de conversão
-
Você pode usar um arquivo de mapeamento de conversão para fornecer definições precisas de como o Database Migration Service deve converter determinados objetos do PostgreSQL. Para usar um arquivo de mapeamento de conversão, faça o seguinte:
- Escreva um arquivo de mapeamento de conversão.
- Adicione o arquivo de configuração ao espaço de trabalho.
- Converta as fontes novamente e verifique se os problemas persistem.
- Tente remover o objeto da guia "Origens"
- O Database Migration Service permite converter . Para desbloquear o processo de conversão, você pode analisar o objeto com falha mais tarde. Remova o objeto da guia "Origens".
- Teste seu esquema para verificar se o Database Migration Service pode aplicar seu código corretamente ao banco de dados de destino.
-
Se os testes forem bem-sucedidos, recomendamos que você use a guia Problemas de conversão para marcar os problemas como Resolvidos. Assim, você pode filtrar esses problemas das visões gerais de conversão e retomar depois de onde parou.
Marcar problemas como resolvidos
Ao revisar e corrigir problemas de conversão, talvez seja útil acompanhar quais problemas já foram corrigidos ou determinados como não afetando a migração e não exigindo nenhuma ação. Use o recurso Marcar como resolvido para filtrar esses problemas e facilitar a navegação na lista.
Para marcar um problema como resolvido, faça o seguinte:
- No console Google Cloud , acesse Espaços de trabalho de conversão e selecione seu espaço de trabalho.
- Use a visualização Árvore de origem para selecionar o objeto com problemas de conversão.
-
Na guia Problemas de conversão, clique em Marcar como resolvido ao lado do problema. Agora você pode filtrar esses problemas da visão geral da conversão.
Figura 3. Tela de problemas de conversão em que você pode marcar problemas como resolvidos. (clique para ampliar)
Testar o esquema no destino
Antes de aplicar o esquema ao banco de dados de destino, faça um teste para verificar proativamente possíveis problemas. Para realizar o teste, o Database Migration Service cria um banco de dados temporário. A execução do teste não afeta o cluster de destino do AlloyDB para PostgreSQL.
Verifique se o usuário de migração dedicado tem a permissão
CREATEDB
. Para mais informações, consulte Criar e configurar o cluster de destino do AlloyDB para PostgreSQL.No console Google Cloud , acesse Espaços de trabalho de conversão.
Clique no nome de exibição do espaço de trabalho de conversão que você quer usar.
O editor do espaço de trabalho de conversão é aberto.
Clique em Aplicar ao destino > Teste (recomendado).
O assistente para aplicar o esquema ao banco de dados de destino vai aparecer.
Na seção Definir destino, selecione o perfil de conexão que aponta para seu banco de dados de destino.
Clique em Definir e continuar.
Na seção Selecionar objetos e testar o aplicativo, escolha os esquemas das entidades de banco de dados que você quer testar no banco de dados de destino.
Use o botão Filtrar objetos para reduzir o número de objetos mostrados. Consulte Filtrar objetos na visualização do esquema de origem.
Clique em Testar aplicativo.
É possível revisar o status do aplicativo na guia AlloyDB para PostgreSQL.
Aplicar esquema ao destino
Quando o esquema que você quer usar no banco de dados de destino é convertido de acordo com seus requisitos e mapeamentos, é possível aplicar os resultados ao banco de dados de destino. A aplicação do esquema no destino não altera nenhum dado no banco de dados de origem.
No console Google Cloud , acesse Espaços de trabalho de conversão.
Clique no nome de exibição do espaço de trabalho de conversão que você quer usar.
O editor do espaço de trabalho de conversão é aberto.
Clique em Aplicar ao destino > Aplicar.
O assistente para aplicar o esquema ao banco de dados de destino vai aparecer.
Na seção Definir destino, selecione o perfil de conexão que aponta para seu banco de dados de destino.
Clique em Definir e continuar.
Na seção Revisar objetos e aplicar a conversão ao destino, selecione os esquemas das entidades de banco de dados que você quer criar no banco de dados de destino.
Use o botão Filtrar objetos para reduzir o número de objetos mostrados. Consulte Filtrar objetos na visualização do esquema de origem.
Clique em Aplicar ao destino.
É possível revisar o status do aplicativo na guia AlloyDB para PostgreSQL.
Criar um job de migração no editor de conversão
É possível criar um job de migração que usa seu espaço de trabalho de conversão diretamente na interface do editor de conversão.
No console Google Cloud , acesse Espaços de trabalho de conversão.
Clique no nome de exibição do espaço de trabalho de conversão que você quer usar.
O editor do espaço de trabalho de conversão é aberto.
Clique em Criar job de migração.
Siga as etapas padrão do job de migração, conforme descrito em Criar um job de migração.
Filtrar objetos na visualização do esquema de origem
Os esquemas de banco de dados geralmente contêm milhares de objetos, o que dificulta a divisão do trabalho de conversão. Ao adicionar objetos do snapshot do esquema à visualização do esquema de origem, é possível usar filtros para limitar o número de objetos mostrados. Com os filtros, é possível adicionar objetos de maneira mais granular e se concentrar na conversão de um subconjunto selecionado do seu esquema.
Use a visualização filtrada ao adicionar objetos à visualização do esquema de origem:
- No campo Filtro, use um dos seguintes métodos de filtragem:
- Na lista Propriedades, selecione uma das seguintes opções sugeridas automaticamente:
- Nome do objeto para filtrar os objetos por nome, por exemplo,
ADMIN
. - Tipo de objeto para filtrar os objetos por vários tipos, como Função ou Tabela.
- Status da conversão para filtrar os objetos por status, como Ação necessária ou Sem problemas.
- Aprimorado pelo Gemini para filtrar objetos que foram convertidos com a conversão automática do Gemini.
É possível combinar propriedades de filtro com operadores lógicos.
- Nome do objeto para filtrar os objetos por nome, por exemplo,
- Digite sua consulta. Por exemplo,
type=table
.Para mais informações sobre a sintaxe de filtragem, consulte Sintaxe de filtragem compatível.
- Selecione os objetos que você quer adicionar à visualização do esquema de origem.
Sintaxe de filtragem de texto compatível
É possível filtrar objetos por nome com uma pesquisa de texto livre básica ou usar uma propriedade type
dedicada.
As duas abordagens são compatíveis com a
especificação formal da API do Google para filtragem. Isso significa que você pode usar literais com caracteres curinga, além de operadores lógicos e de comparação.
- Filtragem de texto livre
-
Use texto livre para filtrar os objetos por nome. Essa abordagem diferencia maiúsculas de minúsculas e aceita caracteres curinga.
Exemplo:
A consulta
*JOB*
usa caracteres curinga para pesquisar entidades que contêm a substringJOB
. A visualização filtrada retorna algumas tabelas e um procedimento armazenado: - Filtrar usando a propriedade
type
-
É possível filtrar objetos por todos os tipos padrão compatíveis com o Database Migration Service.
A propriedade
type
é compatível com os seguintes literais com os operadores de igualdade (=
) e desigualdade (!=
):database
,schema
,table
,column
,index
,sequence
,stored_procedure
,function
,view
,synonym
,materialized_view
,udt
,constraint
,database_package
,trigger
eevent_trigger
.Exemplo:
O filtro
type=table
retorna apenas as tabelas presentes no seu esquema:
Combinar condições de filtragem de texto
É possível especificar várias condições combinando-as com operadores lógicos.
Por exemplo, para pesquisar apenas tabelas com nomes que contêm as substrings JOB
ou EMPLOYEE
, use esta consulta:
type=table AND (*JOB* OR *EMPLOYEE*)
Como resultado, o filtro mostra todas as tabelas correspondentes:
