Cópias e migrações

Como migrar o WordPress para outro alojamento sem perder dados

Revisto a 11 min de leitura wordpress migraciones hosting bases de datos

Migrar o WordPress para outro alojamento consiste em copiar os seus ficheiros e a sua base de dados, adaptar a configuração e verificar o site antes de encaminhar o domínio para o novo servidor. Mudar apenas os DNS não copia a instalação.

Se vai transferir mais elementos além do WordPress, como correio, subdomínios ou várias aplicações, comece pelo guia geral para migrar um alojamento.

O que deve copiar

Uma instalação WordPress precisa de:

  • Todos os ficheiros do diretório do site, incluindo o .htaccess.
  • A pasta wp-content, com temas, plugins e ficheiros carregados.
  • A base de dados completa.
  • Os dados de ligação guardados no wp-config.php.
  • Tarefas agendadas externas ao WordPress, se existirem.
  • Regras especiais, redirecionamentos ou configuração do servidor.

O correio do domínio não faz parte do WordPress. Se também mudar de fornecedor, siga o percurso para migrar as caixas de correio sem perder mensagens.

Antes de iniciar a migração

Verifique:

  1. O espaço ocupado pelos ficheiros e pela base de dados.
  2. A versão do WordPress, do PHP e do MySQL ou MariaDB.
  3. As extensões PHP e os limites de memória necessários.
  4. Se o site usa loja, reservas, formulários ou conteúdo que muda com frequência.
  5. Plugins de cache, segurança, licenças ou serviços associados ao domínio ou ao IP.
  6. Quem gere os DNS e durante quanto tempo o alojamento anterior continuará ativo.

Crie uma cópia recuperável antes de alterar seja o que for. Não aproveite a transferência para atualizar ao mesmo tempo o WordPress, o PHP, o tema e todos os plugins: separar a migração das atualizações facilita localizar qualquer falha.

Escolha o método de migração

Migração automática com o Softaculous

Se a instalação remota estiver acessível e puder ligar-se por FTP, o Softaculous pode importar o WordPress, copiar a base de dados e adaptar o novo caminho. Consulte como migrar uma aplicação a partir de um servidor remoto.

É uma opção cómoda para instalações comuns. Pode falhar quando a origem limita o tempo de execução, bloqueia o processo auxiliar ou contém um site demasiado grande.

Plugin de migração

Plugins como os de cópia ou clonagem empacotam a instalação a partir do painel do WordPress. Antes de escolher um, confirme:

  • O limite máximo de carregamento do destino.
  • O tamanho máximo admitido pela versão gratuita ou pela licença utilizada.
  • Que o pacote inclui realmente ficheiros e base de dados.
  • Que existe espaço para o pacote e para a cópia restaurada ao mesmo tempo.

Não deixe o ficheiro de migração disponível para descarregar a partir da web quando terminar.

Migração manual

É o método mais controlável quando a cópia automática falha:

  1. Descarregue ou empacote todos os ficheiros da origem.
  2. Exporte a base de dados em formato SQL ou SQL comprimido.
  3. Crie no destino uma base de dados e um utilizador com todas as permissões necessárias sobre ela.
  4. Carregue os ficheiros para o docroot correto.
  5. Importe a base de dados.
  6. Atualize DB_NAME, DB_USER, DB_PASSWORD e DB_HOST no wp-config.php.

Pode utilizar o gestor de ficheiros do cPanel, o FTP e o phpMyAdmin para fazer estes passos.

Se também mudar o domínio ou o URL

Quando o site passa de um domínio, subdomínio ou diretório para outro, é preciso adaptar os URL guardados no WordPress.

Não execute uma substituição de texto direta em todo o ficheiro SQL: o WordPress e os seus plugins podem guardar dados serializados cujo comprimento ficaria incorreto. Utilize uma ferramenta compatível com dados serializados ou faça a alteração a partir do WordPress depois de importar uma cópia.

Durante o teste, pode definir temporariamente estas constantes no wp-config.php. Se já existirem, altere os seus valores sem as duplicar. O exemplo pressupõe que o endereço público e a pasta do WordPress coincidem; mantenha o subdiretório em WP_SITEURL se a sua instalação precisar dele:

define('WP_HOME', 'https://www.ejemplo.com');
define('WP_SITEURL', 'https://www.ejemplo.com');

Estas constantes prevalecem sobre os valores home e siteurl da base de dados e bloqueiam a sua edição em Definições > Geral. Se as utilizar apenas para recuperar o acesso ou testar a migração, atualize depois as opções do WordPress e retire as constantes; caso contrário, quando as eliminar no futuro, reaparecerá o URL antigo guardado na base.

Reveja depois ligações, imagens, menus, widgets, conteúdo do construtor visual e redirecionamentos. Se o domínio não mudar, não precisa de substituir URL só por mover o site para outro servidor.

Teste o WordPress antes de mudar os DNS

Sempre que possível, verifique o destino enquanto o domínio continua a servir o site anterior. Pode alterar o ficheiro hosts do seu computador seguindo o guia para pré-visualizar o domínio noutro IP.

Teste pelo menos:

  • Página inicial, páginas internas e ligações permanentes.
  • Acesso ao wp-admin e gravação de conteúdo.
  • Imagens, estilos, JavaScript e tipos de letra.
  • Formulários e entrega real das suas mensagens.
  • Pesquisa, comentários e utilizadores.
  • Carrinho, encomendas, reservas e pagamentos, se existirem, utilizando o modo de testes do gateway e evitando cobranças ou avisos reais durante a verificação.
  • Carregamento de ficheiros e geração de miniaturas.
  • Cron, cópias, cache e plugins de segurança.

Se aparecerem erros 500 ou ecrãs em branco, verifique primeiro a versão de PHP, as extensões, as permissões e o registo de erros. Perante uma falha do MySQL, siga o guia para resolver o erro de ligação à base de dados no WordPress.

Sincronize as últimas alterações

A primeira cópia pode ficar desatualizada se o site continuar a receber encomendas, formulários ou alterações. Imediatamente antes da mudança:

  1. Agende uma janela de pouca atividade.
  2. Ponha a aplicação em manutenção se não conseguir conciliar escritas dos dois servidores.
  3. Copie os ficheiros novos de wp-content/uploads.
  4. Exporte e importe de novo a base de dados ou sincronize apenas os dados que tenha definido.
  5. Anote a hora da última escrita incluída.

Não importe outra vez a base completa depois de abrir o destino ao público: poderia apagar encomendas ou alterações já criadas no novo servidor.

Decida quando desativar as tarefas agendadas da origem e ativar as do destino. Ter as duas cópias a executá-las pode duplicar envios ou operações, mesmo que só uma receba visitantes.

Mude os DNS

Quando a cópia final e os testes estiverem corretos, encaminhe o domínio para o novo alojamento. Se mudar os servidores DNS por completo, reproduza antes os registos MX, TXT, CNAME e SRV do correio e dos serviços externos.

Se mudar os servidores DNS e utilizar DNSSEC, coordene também os registos DS com a nova zona.

Siga o procedimento para mudar os DNS com a mínima interrupção e mantenha a origem ativa durante a propagação.

Verificações depois de migrar o WordPress

  • Confirme através do DNS público que servidor responde.
  • Repita os testes funcionais sem a alteração local do ficheiro hosts.
  • Guarde de novo as ligações permanentes se as regras de reescrita não funcionarem.
  • Esvazie as caches do WordPress, do servidor, da CDN e do navegador.
  • Verifique o certificado HTTPS e o conteúdo misto.
  • Confirme formulários, email da aplicação, cron e cópias.
  • Reveja encomendas, formulários e dados criados perto da hora da mudança.
  • Elimine pacotes, exportações SQL e acessos temporários.

Não cancele o alojamento anterior até concluir a lista de verificações posteriores a uma migração.

Migração gratuita para a Hostsuar

Podemos tratar gratuitamente da migração do seu WordPress para um serviço de alojamento da Hostsuar. Indique o fornecedor e o painel atuais, o domínio, o espaço utilizado, a versão de PHP e se também precisa de transferir o correio.

Não envie palavras-passe num pedido de suporte. Se precisarmos de aceder à origem, indicar-lhe-emos como facultar credenciais temporárias de forma segura.

Também lhe pode ser útil

Algo não bate certo ou mudou? Diga-nos e revemos.