O que é

Migrar um Mautic é muito parecido com migrar um WordPress: você leva o banco de dados e o
conteúdo da pasta htdocs. A diferença está em um arquivo, o config/local.php, que guarda
as credenciais do banco, os caminhos absolutos e uma secret key sem a qual metade das
configurações não volta.

A estratégia é a mesma da migração de site: monta-se tudo
no servidor novo, testa-se pelo arquivo hosts e o DNS só vira no fim. O site antigo fica no ar o
tempo todo.

O que você precisa do servidor antigo

Duas coisas, e nada mais:

  • O banco de dados exportado em .sql.
  • Todo o conteúdo da pasta pública (htdocs): app, bin, config, plugins, media, patches
    e o que mais existir ali.

Exportando o banco do servidor antigo

Se o Mautic de origem já está em um GW Server, é a aba Banco de dadosExportar SQL, e o
download começa (ver Banco de dados do site).

Em outra hospedagem, use o que ela oferecer: SSH com mysqldump, um gerenciador como o Adminer,
ou a exportação do painel (o CloudPanel tem; no WordOps o caminho costuma ser SSH).

O painel do próprio Mautic não exporta o banco. Diferente do WordPress, não existe um plugin
de exportação para resolver isso por dentro. O que decide a facilidade da migração é o que a
hospedagem atual oferece de acesso.

O local.php: o arquivo que decide a migração

Em htdocs/config/local.php fica o equivalente ao wp-config.php do WordPress. Três blocos
importam:

  • Credenciais do banco: db_name, db_user, db_password.
  • A secret key: ela descriptografa dados gravados no banco, como as credenciais de
    autenticação SMTP. Sem a secret key original, boa parte da configuração não volta mesmo com o
    banco certo.
  • Caminhos absolutos: o caminho da pasta pública aparece repetido no arquivo (na instalação de
    exemplo, 11 vezes), e a URL do Mautic aparece cerca de 12.

A secret key do arquivo antigo é a que vale. Você vai reaproveitar o local.php do servidor
antigo e trocar dentro dele só as credenciais do banco e os caminhos — nunca o contrário.

Compactando a pasta pública

Pelo gerenciador de arquivos, selecione tudo dentro da htdocs e gere um .zip. Por SSH, um
zip -r backup.zip . dentro da pasta resolve e costuma ser mais rápido em instalação grande.

Instalando um Mautic limpo no servidor novo

No GW Server, instale um Mautic novo em Sites com três cuidados (ver
Instalando o Mautic):

  1. Mesmo domínio do Mautic atual.
  2. Mesma versão do Mautic de origem: o instalador aceita a versão específica, e é o que
    garante compatibilidade na hora de importar o banco.
  3. Perfil de cron conforme o tamanho da lista: Lite para instalações menores, Performance
    para listas grandes e muitas campanhas.

Usuário e senha de administrador podem ser quaisquer: o banco importado vai sobrescrevê-los. Se
puder, repita os mesmos, para não se confundir depois.

Com a Cloudflare integrada, marque a verificação de SSL por DNS e desmarque a criação dos
registros.
Assim o painel emite o certificado sem tocar no DNS existente, e a instalação antiga
continua no ar durante toda a migração.

Testando pelo arquivo hosts

Com o Mautic novo instalado no mesmo domínio, aponte o seu computador para o servidor novo pelo
arquivo hosts — o mesmo truque da
migração de site: o IP do servidor novo, um espaço e o
domínio, em C:\Windows\System32\drivers\etc\hosts.

A partir daí o seu navegador vê o servidor novo e o resto do mundo continua vendo o antigo.

Importando o banco de dados

Na aba Banco de dados do site novo, escolha o arquivo .sql e importe.

Banco grande? Compacte em .gz. O painel aceita .sql, .zip e .gz — mas não .7z. Na
instalação de exemplo o arquivo caiu de 700 KB para 79 KB, dez vezes menor. Se ainda assim não
passar, suba o arquivo por SFTP e importe pelo
terminal do site, com as credenciais que estão na aba Banco de dados.

Depois de importar, o Mautic vai pedir login de novo — agora com o usuário do servidor antigo.
Os contatos aparecem, mas as configurações de e-mail e de DNS vêm vazias. Isso é esperado:
elas não moram no banco, moram nos arquivos. É o que o próximo passo resolve.

Substituindo os arquivos

Na htdocs do site novo, apague tudo e suba o zip do servidor antigo no lugar. Descompacte.

Apague o zip depois de descompactar. Ele fica dentro da pasta pública, e enquanto estiver ali
qualquer pessoa pode baixar o backup inteiro do seu Mautic pela URL.

Nesse ponto o site responde com erro. É normal: os arquivos antigos ainda apontam para o banco e
para os caminhos do servidor velho.

Ajustando o local.php

Abra htdocs/config/local.php (agora o arquivo antigo, que veio no zip) e troque apenas:

  • db_name, db_user e db_password pelos dados do servidor novo, que estão na aba
    Banco de dados do site.

Não toque na secret key. É ela que vai revelar os dados criptografados que vieram no banco.

Corrigindo os caminhos absolutos

Ainda no local.php, troque todas as ocorrências do caminho da pasta pública antiga pelo caminho
do GW Server:

/var/www/<seu-dominio>/htdocs

Quantas ocorrências existem depende da instalação — no exemplo da aula, 11. Use a busca do editor
para não deixar nenhuma para trás.

O caminho de origem varia conforme a plataforma:

Plataforma de origem Caminho típico
GW Server e WordOps /var/www/<domínio>/htdocs
CloudPanel /home/<site>/htdocs/<domínio>
Hospedagem compartilhada algo terminando em public_html

Limpando o cache do Mautic

Passo obrigatório, e o que mais gera “migrei tudo e continua com erro”: apague as pastas dentro de
var/cache (as pastas prod e run).

O Mautic guarda no cache os caminhos e as configurações compiladas da instalação anterior.
Enquanto elas existirem, ele ignora o que você acabou de ajustar. Com o cache limpo, ele volta a
responder e você faz login com os dados do Mautic original.

Virando o DNS

Com tudo validado pelo arquivo hosts, é só apontar o domínio para o servidor novo: na Cloudflare,
abra os registros de DNS e troque o IP do registro do Mautic para o IP do servidor novo (ele está
no dashboard do painel).

Feito isso, a instalação nova passa a atender todo mundo. Lembre de desfazer a linha que você
adicionou no arquivo hosts do seu computador.

Problemas comuns

Sintoma Causa provável
Erro 500 depois de subir os arquivos credenciais do banco ainda são as do servidor antigo no local.php
Continua com erro mesmo com o local.php certo falta apagar var/cache/prod e var/cache/run
Configurações de SMTP vazias ou não funcionam a secret key foi trocada pela da instalação nova
Caminhos de mídia quebrados ficou alguma ocorrência do caminho antigo no local.php
Import do banco falha por tamanho compacte em .gz ou importe pelo terminal

Veja também


Em vídeo: Aula 24 · Migração do Mautic a partir de 00:00