Os espaços de trabalho de conversão permitem-lhe corrigir problemas de conversão, modificar os seus objetos com o editor interativo e aplicar o esquema convertido à base de dados de destino. Esta página oferece uma vista geral de todas as ações que pode realizar com os espaços de trabalho de conversão.
Atualizar espaços de trabalho para a conversão automática com tecnologia Gemini
Os espaços de trabalho de conversão atualizados dão acesso às funcionalidades de conversão automática com tecnologia Gemini e resumo das conversões.
Para atualizar o seu espaço de trabalho de conversão, faça o seguinte:
- Na Google Cloud consola, aceda a Espaços de trabalho de conversão e selecione o seu espaço de trabalho.
-
Clique em Explorar funcionalidades para atualizar e aceite a oferta na caixa de diálogo:
Figura 1. Oferta de atualização do espaço de trabalho de conversão. (clique para ampliar)
Reveja o estado das conversões


Na secção Vista geral das conversões, pode ver todas as informações relativas à conversão do esquema: o número e o tipo de objetos convertidos, o respetivo estado de conversão (incluindo problemas abertos ou resolvidos), bem como a lista de melhorias fornecidas pela conversão automática assistida pelo Gemini.
Também pode usar os filtros em cada categoria para reduzir o número de objetos apresentados na vista de árvore por tipo, gravidade do problema e problemas pendentes ou resolvidos. A vista geral de conversões só está disponível para espaços de trabalho de conversão atualizados.
Para ver informações detalhadas sobre o progresso da conversão do código e do esquema, faça o seguinte:
- Na Google Cloud consola, aceda a Espaços de trabalho de conversão e selecione o seu espaço de trabalho.
- No separador Oracle, use a vista de árvore do esquema para fazer uma das seguintes ações:
- Selecione Oracle para ver as informações de todos os objetos em todos os esquemas convertidos no seu espaço de trabalho.
- Selecione um esquema ou um objeto específico para ver os detalhes de conversão de um subconjunto de objetos.
- No separador Vista geral das conversões, explore as informações na secção Resumo do objeto convertido. Use o botão Mostrar objetos para aplicar qualquer filtro à vista de árvore no separador Oracle.
- Use o separador Problemas de conversão para começar a resolver os problemas de conversão. Para mais informações, consulte Corrija problemas de conversão.
Remova objetos do esquema de origem
Remova objetos do esquema de origem para os excluir da conversão. Pode adicionar objetos removidos mais tarde, se necessário.
- Na Google Cloud consola, aceda a Espaços de trabalho de conversão e selecione o seu espaço de trabalho.
- No separador Oracle, junto ao objeto que quer remover, selecione > Remover. Mais
- Na caixa de diálogo de confirmação Remover objeto, clique em Remover.
- Atualize o esquema convertido. Clique em
Pode inspecionar o esquema convertido no separador Rascunho do Cloud SQL para PostgreSQL.
Converter origem.
O Database Migration Service analisa agora as suas alterações e gera o esquema do PostgreSQL atualizado.
Adicione objetos ao esquema de origem
Pode adicionar objetos removidos anteriormente do esquema de origem para os adicionar à conversão.
- Na Google Cloud consola, aceda a Espaços de trabalho de conversão e selecione o seu espaço de trabalho.
- No separador Oracle, clique em Adicionar objetos.
- Na secção Adicionar objetos, use a lista de origem para selecionar todas as entidades que quer adicionar ao esquema de origem.
Pode usar o botão Filtrar objetos para reduzir o número de objetos apresentados. Consulte Filtrar objetos na vista do esquema de origem
- Clique em Adicionar objetos.
- Atualize o esquema convertido. Clique em
Pode inspecionar o esquema convertido no separador Rascunho do Cloud SQL para PostgreSQL.
Converter origem.
O Database Migration Service analisa agora as suas alterações e gera o esquema do PostgreSQL atualizado.
Extraia o esquema de origem e o instantâneo de código
Pode extrair o esquema e o código da base de dados de origem para o espaço de trabalho de conversão em qualquer altura. A obtenção da origem dá-lhe a oportunidade de adicionar novos objetos ou atualizar os existentes na conversão.
A obtenção do esquema e do código da base de dados atualizados não repõe as associações personalizadas existentes no espaço de trabalho de conversões, a menos que opte explicitamente por remover as associações personalizadas.
Além disso, a obtenção da origem não substitui as alterações de SQL nos objetos de código. Pode repor estas alterações diretamente ao nível do objeto.
- Na Google Cloud consola, aceda a Espaços de trabalho de conversão e selecione o seu espaço de trabalho.
- Clique em > Extrair novamente a captura instantânea do esquema de origem. Editar configuração
- Na caixa de diálogo:
- Opcional: selecione Repor mapeamento personalizado para remover os mapeamentos personalizados e as modificações da DDL existentes.
- Clique em Extrair instantâneo do esquema.
O Database Migration Service extrai o novo instantâneo da base de dados de origem.
- Atualize o esquema convertido. Clique em
Pode inspecionar o esquema convertido no separador Rascunho do Cloud SQL para PostgreSQL.
Converter origem.
O Database Migration Service analisa agora as suas alterações e gera o esquema do PostgreSQL atualizado.
Use mapeamentos de conversões personalizadas
Pode personalizar a lógica de conversão com um ficheiro de mapeamento de conversões. O ficheiro de mapeamento de conversões é um ficheiro de texto que contém instruções precisas (denominadas diretivas de conversão) sobre como os seus objetos Oracle devem ser convertidos em objetos PostgreSQL.
Escreva um ficheiro de mapeamento personalizado
Para escrever os seus ficheiros de mapeamento personalizados:
Use o ficheiro de configuração de exemplo como ponto de referência.
Escreva os mapeamentos de conversões personalizadas num editor de texto e carregue-os para o espaço de trabalho de conversões.
Adicione ficheiros de mapeamento personalizados
Para adicionar um ficheiro de mapeamento de conversões personalizado ao seu espaço de trabalho, faça o seguinte:
- Na Google Cloud consola, aceda a Espaços de trabalho de conversão e selecione o seu espaço de trabalho.
- Na página do editor de conversões, selecione > Personalizar mapeamento com um ficheiro de configuração. Editar configuração
- Na caixa Ficheiro de configuração, clique em Procurar e use o seletor de ficheiros do sistema para selecionar o ficheiro de configuração.
- Clique em > Criar mapeamento. Adicionar ficheiro
Remova ficheiros de mapeamento personalizados
Para remover um ficheiro de mapeamento de conversões personalizado do seu espaço de trabalho, faça o seguinte:
- Na Google Cloud consola, aceda a Espaços de trabalho de conversão e selecione o seu espaço de trabalho.
- Na página do editor de conversões, selecione > Remover mapeamento personalizado. Editar configuração
Reveja os resultados das conversões
Depois de fazer a conversão da origem, pode rever os resultados da conversão e possíveis problemas para cada objeto convertido individual na área do editor do espaço de trabalho. Também pode usar a Google Cloud CLI para guardar todos os resultados e problemas em massa num ficheiro de texto.
Consola
Na Google Cloud consola, aceda a Espaços de trabalho de conversão.
Clique no nome a apresentar do espaço de trabalho de conversão com o qual quer trabalhar.
O editor do espaço de trabalho de conversão é aberto.
Selecione o separador Oracle e localize o objeto para o qual quer rever os resultados de conversão na tabela de vista em árvore.
Selecione o objeto. Use os separadores SQL e Problemas de conversão para rever a conversão.
Se determinar que o problema é um aviso e não justifica nenhuma ação, pode marcá-lo como resolvido. Caso contrário, pode investigar mais a fundo e corrigi-lo no editor de conversões.
gcloud
Com a CLI do Google Cloud, pode imprimir todos os resultados de conversão ou problemas no terminal. Redirecione a saída para um ficheiro para revisões de objetos em massa mais convenientes.
Aceda a uma lista de resultados de conversão
A CLI gcloud apresenta os resultados da conversão no terminal sob a forma de declarações de linguagem de definição de dados (LDD). Para guardar os resultados das conversões num ficheiro, execute o seguinte comando:
gcloud database-migration conversion-workspaces describe-ddls \
CONVERSION_WORKSPACE_ID \
--region=REGION_ID \
> OUTPUT_FILE_PATH
Substituir:
CONVERSION_WORKSPACE_ID
com o identificador do espaço de trabalho de conversão. Para obter informações sobre como obter identificadores do espaço de trabalho de conversão, consulte Ver detalhes do espaço de trabalho de conversão.REGION_ID
com o nome da região onde o espaço de trabalho de conversão está localizado.OUTPUT_FILE_PATH
com o caminho para o ficheiro de texto onde quer guardar 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 do esquema são guardados num formato de texto em que a primeira linha indica
DDLs
e as linhas subsequentes são ocupadas por declaraçõ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;
Obtenha uma lista de problemas de conversão
Para guardar os problemas de conversão num ficheiro, execute o seguinte comando:
gcloud database-migration conversion-workspaces describe-issues \
CONVERSION_WORKSPACE_ID \
--region=REGION_ID \
> OUTPUT_FILE_PATH
Substituir:
-
CONVERSION_WORKSPACE_ID
com o identificador do espaço de trabalho de conversão. Para obter informações sobre como obter identificadores do espaço de trabalho de conversão, consulte Ver detalhes do espaço de trabalho de conversão. -
REGION_ID
com o nome da região onde o espaço de trabalho de conversão está localizado. -
OUTPUT_FILE_PATH
com o caminho para o ficheiro de texto onde quer guardar 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 guardados num formato de texto, em que a primeira linha contém os cabeçalhos das colunas 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.
Corrija problemas de conversão
O Database Migration Service pode não conseguir converter automaticamente toda a origem. Para a maioria dos objetos Oracle, pode usar o editor de conversão diretamente no Database Migration Service para ajustar o SQL gerado. Para outros, pode ter de alterar o objeto diretamente na base de dados de origem e, em seguida, extrair novamente o instantâneo de origem.
Para ver uma lista completa dos objetos que o serviço de migração de bases de dados suporta para edição diretamente no espaço de trabalho de conversão, consulte o artigo Objetos Oracle editáveis.
Para corrigir os problemas de conversão encontrados no seu esquema, faça o seguinte:
- Na Google Cloud consola, aceda a Espaços de trabalho de conversão e selecione o seu espaço de trabalho.
-
Reveja os resultados das conversões e identifique possíveis problemas.
Pode usar a Google Cloud consola para rever objetos individuais ou a CLI gcloud para rever todos os objetos em massa.
-
Consoante o tipo de problema, pode corrigi-lo diretamente no editor do espaço de trabalho ou pode ter de fornecer um ficheiro de mapeamento de conversões personalizado. Expanda as seguintes secções para ver mais informações.
Independentemente do tipo de problema com que está a trabalhar, pode experimentar o o assistente de conversões com tecnologia Gemini para encontrar uma solução. Para mais informações, consulte o artigo Use o assistente de conversões do Gemini. Se determinar que o problema é um aviso e não justifica nenhuma ação, pode marcá-lo como resolvido.
Corrija problemas com objetos suportados pelo editor integrado
Para corrigir problemas encontrados com objetos suportados no editor do espaço de trabalho, faça o seguinte:
- Encontre o seu problema na vista de árvore da Oracle e, de seguida, selecione o separador Código.
- Use o editor de SQL para atualizar o código gerado.O serviço de migração de base de dados não valida a correção do código SQL que adiciona no editor.
Corrija problemas com objetos que não são suportados pelo editor incorporado
Para corrigir problemas encontrados com objetos que não são suportados no editor do espaço de trabalho, execute uma das seguintes ações:
- Atualize objetos com falhas na sua origem
- Para alguns problemas, pode ter de alterar a declaração Oracle
diretamente na base de dados de origem. Faça o seguinte:
- Atualize o esquema e o código diretamente na base de dados de origem.
- Extraia as origens atualizadas para o Database Migration Service.
- Converta novamente as origens e verifique se os problemas persistem.
- Faculte mapeamentos adicionais com um ficheiro de mapeamento de conversões
-
Pode usar um ficheiro de mapeamento de conversões para fornecer definições precisas sobre como o Database Migration Service deve converter determinados objetos do PostgreSQL. Para usar um ficheiro de mapeamento de conversões, faça o seguinte:
- Escreva um ficheiro de mapeamento de conversões.
- Adicione o ficheiro de configuração ao espaço de trabalho.
- Converta novamente as origens e verifique se os problemas persistem.
- Experimente remover o objeto do separador Fontes O
- Database Migration Service permite-lhe converter Para desbloquear o processo de conversão, pode optar por analisar mais detalhadamente o objeto com falhas mais tarde. Remova o objeto do separador Fontes.
- Teste o seu esquema para verificar se o Database Migration Service consegue aplicar corretamente o seu código à base de dados de destino.
-
Se os testes forem bem-sucedidos, recomendamos que use o separador Problemas de conversão para marcar os problemas como Resolvidos. Desta forma, pode filtrar estes problemas das vistas gerais de conversões e retomar mais tarde a partir do ponto em que ficou.
Marque problemas como resolvidos
À medida que revê e corrige problemas de conversão, é recomendável manter um registo dos problemas que já corrigiu (ou determinou que não afetam a migração e não justificam nenhuma ação). Pode usar a funcionalidade Marcar como resolvido para filtrar esses problemas e facilitar a navegação na lista de problemas.
Para marcar um problema como resolvido, faça o seguinte:
- Na Google Cloud consola, aceda a Espaços de trabalho de conversão e selecione o seu espaço de trabalho.
- Use a vista Árvore de origem para selecionar o objeto que tem problemas de conversão.
-
No separador Problemas de conversão, junto ao problema, clique em Marcar como resolvido. Agora, pode filtrar estes problemas da vista geral das conversões.
Figura 3. Ecrã de problemas de conversão onde pode marcar problemas como resolvidos. (clique para ampliar)
Teste o seu esquema no destino
Antes de aplicar o esquema à base de dados de destino, pode executar primeiro um teste para verificar proativamente possíveis problemas. Para realizar o teste, o Database Migration Service cria uma base de dados temporária. A execução de teste não afeta a instância do Cloud SQL de destino.
Certifique-se de que o utilizador de migração dedicado tem a autorização
CREATEDB
. Para mais informações, consulte o artigo Crie e configure a instância do Cloud SQL de destino.Na Google Cloud consola, aceda a Espaços de trabalho de conversão.
Clique no nome a apresentar do espaço de trabalho de conversão com o qual quer trabalhar.
O editor do espaço de trabalho de conversão é aberto.
Clique em Aplicar ao destino > Testar (recomendado).
Aparece o assistente para aplicar o esquema à base de dados de destino.
Na secção Defina o destino, selecione o perfil de associação que aponta para a base de dados de destino.
Clique em Definir e continuar.
Na secção Selecionar objetos e testar aplicação, selecione os esquemas das entidades da base de dados que quer testar para a base de dados de destino.
Pode usar o botão Filtrar objetos para reduzir o número de objetos apresentados. Consulte o artigo Filtre objetos na vista do esquema de origem.
Clique em Testar aplicação.
Pode rever o estado da aplicação no separador Cloud SQL para PostgreSQL.
Aplique o esquema ao destino
Quando o esquema que quer usar na base de dados de destino é convertido de acordo com os seus requisitos e mapeamentos, pode aplicar os resultados à base de dados de destino. A aplicação do esquema no destino não altera os dados na base de dados de origem.
Na Google Cloud consola, aceda a Espaços de trabalho de conversão.
Clique no nome a apresentar do espaço de trabalho de conversão com o qual quer trabalhar.
O editor do espaço de trabalho de conversão é aberto.
Clique em Aplicar ao destino > Aplicar.
Aparece o assistente para aplicar o esquema à base de dados de destino.
Na secção Defina o destino, selecione o perfil de associação que aponta para a base de dados de destino.
Clique em Definir e continuar.
Na secção Reveja os objetos e aplique a conversão ao destino, selecione os esquemas das entidades da base de dados que quer criar na base de dados de destino.
Pode usar o botão Filtrar objetos para reduzir o número de objetos apresentados. Consulte o artigo Filtre objetos na vista do esquema de origem.
Clique em Aplicar ao destino.
Pode rever o estado da aplicação no separador Cloud SQL para PostgreSQL.
Crie uma tarefa de migração a partir do editor de conversões
Pode criar uma tarefa de migração que use o seu espaço de trabalho de conversão diretamente a partir da interface do editor de conversões.
Na Google Cloud consola, aceda a Espaços de trabalho de conversão.
Clique no nome a apresentar do espaço de trabalho de conversão com o qual quer trabalhar.
O editor do espaço de trabalho de conversão é aberto.
Clique em Criar tarefa de migração.
Continue com os passos da tarefa de migração padrão, conforme descrito no artigo Crie uma tarefa de migração.
Filtre objetos na vista do esquema de origem
Os esquemas de bases de dados contêm frequentemente milhares de objetos, o que dificulta a partição do trabalho de conversão. Quando adiciona objetos da captura de ecrã do esquema à vista do esquema de origem, pode usar filtros para limitar o número de objetos apresentados. Os filtros permitem-lhe adicionar objetos de forma mais detalhada e focar-se na conversão de um subconjunto selecionado do seu esquema.
Use a vista filtrada quando adicionar objetos à vista 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.
- Estado da conversão para filtrar os objetos pelo estado da conversão, como Ação necessária ou Sem problemas.
- Melhorado pelo Gemini para filtrar objetos que foram convertidos com a conversão automática do Gemini.
Pode combinar propriedades de filtro com operadores lógicos.
- Nome do objeto para filtrar os objetos por nome, por exemplo,
- Introduza a consulta. Por exemplo:
type=table
.Para mais informações sobre a sintaxe de filtragem, consulte o artigo Sintaxe de filtragem suportada.
- Selecione os objetos que quer adicionar à vista do esquema de origem.
Sintaxe de filtragem de texto suportada
Pode filtrar objetos por nome com a pesquisa de texto livre básica ou usar uma propriedade type
dedicada.
Ambas as abordagens suportam a
especificação formal da API Google para filtragem,
o que significa que pode usar literais com carateres universais, bem como operadores lógicos e de comparação.
- Filtragem de texto livre
-
Use texto livre para filtrar os objetos por nome. Esta abordagem é sensível a maiúsculas e minúsculas e suporta carateres universais.
Exemplo:
A consulta
*JOB*
usa carateres universais para pesquisar entidades que contêm a subcadeia de carateresJOB
. A vista filtrada devolve algumas tabelas e um procedimento armazenado: - Filtre através da propriedade
type
-
Pode filtrar objetos por todos os tipos padrão suportados no serviço de migração de bases de dados.
A propriedade
type
suporta 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
devolve apenas tabelas presentes no seu esquema:
Combine condições de filtragem de texto
Pode especificar várias condições combinando-as com operadores lógicos.
Por exemplo, para pesquisar exclusivamente tabelas cujos nomes contenham as subcadeias de carateres JOB
ou EMPLOYEE
, use esta consulta:
type=table AND (*JOB* OR *EMPLOYEE*)
Como resultado, o filtro apresenta todas as tabelas correspondentes:
