Experimente grátis na Microsoft Store · Ver preços
O que o dbSlice faz nesta rota
- Move os dados, não o esquema. Crie as tabelas no Azure antes (pelos seus scripts, ou pelo
CREATE TABLEque o dbSlice mostra para o seu DBA). O dbSlice não cria objetos nos seus bancos por conta própria. - Carga inicial com bulk copy. A primeira execução usa a cópia em massa do SQL Server para a tabela vazia no Azure. Dá para manter os valores originais de
IDENTITY, o que exige permissão deALTERna tabela. - Upsert feito para um link longo. Cada página de até 5.000 linhas vai para o Azure como um único comando e é aplicada com um único
MERGE; assim, uma ida e volta lenta até a nuvem custa uma viagem por página, e não uma por linha. Basta permissão de leitura e escrita na tabela. Se o seu DBA permitir tabelas temporárias, um modo opcional com área de preparo é ainda mais rápido. - Lê e grava ao mesmo tempo. Enquanto uma página é gravada no Azure, a próxima já está sendo lida da origem, e a latência dos dois lados se sobrepõe.
- Avisa antes de gravar entre ambientes. Quando a origem está on-premises e o destino na nuvem, o dbSlice mostra isso na tela antes da execução.

Antes da primeira execução
- Firewall. O Azure SQL só aceita conexões de endereços IP liberados. Libere o IP público da máquina que roda o dbSlice, ou use um private endpoint ou VPN.
- Criptografia. Use
Encrypt=Truena conexão. O Azure SQL exige. - Camada de serviço. Uma camada pequena limita a vazão de escrita do log, e uma carga inicial grande fica presa nesse limite. Muitas equipes aumentam a camada para a carga e reduzem depois.
- O que fica para trás. Como qualquer ferramenta de dados, o dbSlice não move procedures, jobs do SQL Agent, linked servers nem consultas entre bancos; o Azure SQL Database não suporta parte deles. Planeje isso com o seu DBA.
Passo a passo
- Conecte ao SQL Server e ao Azure SQL (servidor
seuservidor.database.windows.net, porta 1433). - Escolha a tabela de origem ou um SELECT, e a tabela de destino no Azure.
- Escolha a coluna-chave usada para casar as linhas.
- Escolha o modo: Carga inicial na primeira vez, depois Upsert ou Só novas a cada execução.
- Confira antes da troca: Record Diff e Compare mostram as linhas faltantes e diferentes, chave a chave.
- Rode, ou salve como job e agende pela CLI. O Replicador copia uma lista de tabelas numa só execução, as tabelas pai antes das filhas.
On-premises e Azure em dia até a virada
Agende um job de Upsert toda noite, ou de hora em hora. Com uma coluna que só cresce (um updated_at ou o id IDENTITY), cada execução lê só as linhas acima do último valor visto. As execuções incrementais não enxergam exclusões no SQL Server; por isso, rode uma comparação completa ou uma recarga antes da troca. O dbSlice sincroniza em lote, num sentido; não é replicação em tempo real.
Qual a velocidade?
Uma execução medida: 31,4 milhões de linhas para o Azure SQL em cerca de 30 minutos (≈17.200 linhas/s), modo de carga inicial, a partir de um arquivo SQLite em disco local. Num link de WAN, a rede e a camada de serviço do Azure costumam ditar o ritmo; meça um job nas suas próprias tabelas. Condições e outros números em qual a velocidade do dbSlice.
Outras rotas a partir do SQL Server
SQL Server para PostgreSQL ou SQL Server para MySQL. Todos os pares: guias de migração.
Experimente
A versão grátis na Microsoft Store conecta ao SQL Server e ao Azure SQL, mostra os dados, compara e exporta para CSV, sem chave de licença. Copiar e sincronizar no destino exige uma licença Desktop ou Server (perpétua, com 12 meses de atualizações e garantia de devolução de 14 dias).