Avaliação de migração gratuita: saiba o que quebra antes de migrar

Avaliação de migração gratuita · · 3 min de leitura

Antes de levar um banco do SQL Server para o PostgreSQL, ou o contrário, você quer saber quais colunas não vão sobreviver à viagem. O dbSlice lê o esquema do seu banco de origem e grava um relatório HTML: para cada coluna, o tipo que ela ganha no destino e o que precisa da sua atenção. É só leitura, e é gratuito: roda na versão gratuita da Microsoft Store, sem licença e sem cadastro.

O que o relatório mostra

O relatório separa as constatações em três grupos:

  • Bloqueios: uma coluna que não tem equivalente no destino e pede uma decisão antes da carga.
  • Pedem atenção: a coluna migra, mas algo muda: precisão, comportamento ou uma regra que você precisa recriar.
  • Colunas sem observações: a coluna migra como está, com o tipo de destino sugerido.

Para cada constatação você recebe a tabela, a coluna, o tipo na origem, o tipo sugerido no destino e o que fazer.

Aba Compare structure do dbSlice

O que ele verifica, SQL Server → PostgreSQL

  • sql_variant: sem equivalente; separe por tipo ou converta antes (bloqueio).
  • geography, geometry, hierarchyid: sem equivalente nativo; dados espaciais precisam do PostGIS, hierarchyid precisa de ltree ou de um novo desenho (bloqueio).
  • datetime2 com 7 dígitos: o PostgreSQL guarda microssegundos, então o 7º dígito é cortado.
  • money vira NUMERIC(19,4); tinyint vira SMALLINT.
  • rowversion: gerado pelo SQL Server, então o valor não migra.
  • datetimeoffset: o timestamptz guarda o instante em UTC, não o offset original.
  • Colunas xml, text, ntext, image e (max), com os limites de cada lado.
  • Comparação de texto: o SQL Server costuma ignorar maiúsculas e o PostgreSQL não; então WHERE, JOIN e chaves únicas em texto podem se comportar de outro jeito.

O que ele verifica, PostgreSQL → SQL Server

  • Arrays: o SQL Server não tem tipo array (bloqueio).
  • NUMERIC com mais de 38 dígitos (bloqueio), e NUMERIC sem precisão, que vira DECIMAL(38,10).
  • json/jsonb, interval, inet/cidr/macaddr, enums e domains, timestamptz.
  • Maiúsculas: valores que diferem só nas maiúsculas podem colidir em chaves únicas no SQL Server.

Verificado em todos os pares

Estas regras valem para todos os bancos que o dbSlice lê, não só SQL Server e PostgreSQL:

  • Tabelas sem chave primária.
  • Colunas autoincremento, e o próximo valor depois da carga.
  • Nomes que precisam de aspas no destino.
  • Tipos sem equivalente conhecido.

Hoje, regras de tipo detalhadas existem só para SQL Server ⇄ PostgreSQL.

Como rodar

  1. Instale a versão gratuita da Microsoft Store e cadastre duas conexões: o banco que você tem e um do tipo para o qual vai migrar.
  2. Abra o Compare structure e escolha a conexão de origem e a de destino.
  3. Clique em Migration assessment e escolha onde salvar o relatório HTML. Ele abre no seu navegador quando termina.

O relatório lê só o esquema da origem. Ele não cria nem altera nada em nenhum dos dois bancos.

Da avaliação à migração

A avaliação é gratuita. Mover os dados não é: a migração em si (Initial load, Upsert, Só linhas novas, comparação chave a chave depois) exige uma licença do dbSlice. Veja os preços.

Vai substituir um sistema e precisa de ajuda para desenhar a convivência? A Thinwork pode tocar o projeto com você. Veja como migrações e sincronias rodaram em produção nas histórias de clientes.

Perguntas frequentes

A avaliação de migração é mesmo gratuita?

Sim. Ela roda na versão gratuita da Microsoft Store, sem licença. Migrar, sincronizar e replicar dados exige uma licença.

Ela altera o meu banco?

Não. É só leitura: lê o esquema da origem e grava um arquivo HTML no seu computador.

Quais bancos ela cobre?

Regras de tipo detalhadas para SQL Server para PostgreSQL e PostgreSQL para SQL Server. Para os outros pares (Oracle, MySQL, MariaDB, Firebird, SQLite, InterSystems Caché/IRIS e outros), ela aplica as regras gerais: chaves primárias, autoincremento, nomes e tipos desconhecidos.

Teste com os seus próprios dados: a versão gratuita da Microsoft Store não pede chave de licença.

Em produção há mais de 6 anos · Garantia de 14 dias · Roda na sua máquina