Como migrar o WordPress com mudança de domínio

Como migrar o WordPress com mudança de domínio
O tema deste artigo é uma demanda antiga aqui no blog. Desde que publicamos o tutorial sobre como migrar o WordPress sem alteração de domínio, temos recebido muitos comentários e e-mails com pedidos de orientação sobre este procedimento. Como o artigo mencionado não trata da alteração da URL de instalação do WordPress, achamos válido produzir um tutorial exclusivo para esta situação.

De maneira resumida, ao migrar o WordPress com mudança de domínio, é necessário fazer uma alteração no banco de dados. Isso porque o WordPress grava, no momento da instalação, a URL onde foi instalado. Portanto, quando há alteração de domínio, precisamos varrer o banco de dados e substituir a URL antiga pela nova. O procedimento não é complicado, como veremos ao longo do artigo, mas precisa de atenção.

Se você pretende fazer uma migração do WordPress de servidor, sem mudança de domínio, siga o tutorial Como migrar o WordPress de hospedagem (mantendo o mesmo domínio).

Para quem este artigo é indicado

As instruções e informações contidas aqui poderão ser utilizadas em uma série de situações. As principais seriam:

  • Para quem está desenvolvendo o WordPress localmente e deseja migrá-lo para uma hospedagem ao final do processo;
  • Para quem deseja criar uma cópia idêntica do WordPress em qualquer outro servidor/computador;
  • Para quem está migrando o WordPress de hospedagem e o domínio será alterado.

Caso você se enquadre em alguma das situações acima, então continue conosco e vamos aprender a migrar o WordPress com mudança de domínio!

Antes de começar a migração do WordPress

Antes de começar, é importante certificar-se de que você possui todas as ferramentas e acessos necessários para realizar os procedimentos que veremos a seguir. Você vai precisar de:

  1. Acesso aos arquivos de instalação do WordPress, o que inclui tudo o que está na raiz da instalação, inclusive os diretórios /wp-admin, /wp-includes e /wp-content.
  2. Acesso ao banco de dados da instalação original do WordPress, que precisará ser exportado. A exportação pode ser feita via PHPMyAdmin, linha de comando ou qualquer gerenciador externo de banco de dados (ex.: MySQL Workbench).
  3. Acesso ao novo servidor de hospedagem, para onde os arquivos serão migrados.
  4. Acesso ao banco de dados do novo servidor. Da mesma forma que o acesso ao banco de dados original, o acesso pode ser feito via PHPMyAdmin, linha de comando ou qualquer gerenciador externo.

É importante mencionar que existem outras formas de migrar o WordPress, como por exemplo, através do uso de plugins para exportar a base de dados. Nesse caso, a exportação seria feita dentro do painel de administração do WordPress (e não diretamente no banco de dados). No entanto, o procedimento que veremos a seguir apresenta menor propensão a falhas e problemas referentes à exportação e importação do banco de dados.

Iniciando a migração do WordPress

Agora que já nos certificamos de que temos todos os acesso necessários, vamos iniciar a migração.

#1 – Backup dos arquivos do WordPress

Esteja você trabalhando com o WordPress instalado em seu computador ou em um servidor de hospedagem, você precisará fazer um backup de todos os arquivos, para que eles possam ser migrados para a nova hospedagem.

Backup em ambiente local (localhost)

Como muitos sabem, é possível ter o WordPress rodando em um computador pessoal, através da instalação de um servidor local. Para isso, é necessário ter um programa que simule o ambiente de um servidor de hospedagem. Existem muitos programas que cumprem essa função. Alguns dos aplicativos mais populares incluem o XAMPP, EasyPHP, USB WebServer, e muitos outros. Se você está trabalhando em um servidor local e deseja migrar o WordPress para uma nova hospedagem, você já possui os arquivos em seu computador. Ainda assim, recomendo que faça uma cópia do diretório raiz da instalação do WordPress. Dessa forma, você poderá editar à vontade os arquivos que irão para a nova hospedagem, sem se preocupar em alterar o ambiente de desenvolvimento original.

wordpress backup

Backup em um servidor de hospedagem

Se o WordPress que você deseja migrar está instalado em um servidor de hospedagem, você precisará, da mesma forma, copiar todos os arquivos que compõem o WordPress.

Para fazer o backup, você poderia se valer do painel de controle de sua hospedagem. As hospedagens mais populares possuem uma área na qual é possível visualizar e até mesmo editar os arquivos que estão no servidor. No entanto, existem maneiras mais práticas de fazer esse backup. Uma delas é usando um programa de FTP.

Se você utiliza um programa de FTP, como o FileZilla, você deverá acessar o seu servidor e copiar todos os arquivos da instalação do WordPress. Isso inclui os arquivos que estão na raiz e todo o conteúdo das pastas wp-admin, wp-includes e wp-content. Acesse então sua hospedagem usando o programa de FTP escolhido e faça o backup do servidor para o seu computador.

faça download dos arquivos do WordPress via ftp

Após a finalização do download dos arquivos, estaremos prontos para a segunda etapa, que é a exportação do banco de dados.

#2 – Exportação do banco de dados

A exportação do banco de dados do WordPress deve gerar um único arquivo com a extensão .sql. Este formato de arquivo contém, além do conteúdo da base de dados, instruções para a criação da estrutura do banco de dados, em caso de uma importação. Assim, através da importação deste arquivo, o MySQL será capaz de saber quais tabelas precisam ser criadas e qual conteúdo inserir em cada uma delas.

Existem diversas maneiras de exportar um banco de dados. Seja qual for o método escolhido, você precisa ter as credencias da base (usuário e senha). Uma maneira muito comum de exportar uma base é usando um gerenciador. Ele pode ser externo, como por exemplo, um programa instalado em seu computador que se conecta à base de dados, ou interno, localizado no próprio servidor de hospedagem. Muitas empresas de hospedagem oferecem o gerenciador de banco de dados PHPMyAdmin. Assim, sem que seja necessária a instalação de qualquer programa, é possível administrar o banco de dados pelo navegador. Outras maneiras de exportação incluem o acesso via ssh (linha de comando) e gerenciadores externos.

Para este artigo, vamos considerar a exportação via PHPMyAdmin, por ser uma aplicação bastante popular e também por estar disponível em instalações locais, como o XAMPP ou EasyPHP.

Então, acesse o PHPMyAdmin e localize, no menu lateral, o nome da base de dados do seu WordPress.

phpmyadmin tabelas wordpress

Selecione-a e navegue até a aba Exportar, na parte superior da tela. Use o modo de exportação rápida e escolha o formato SQL.

phpmyadmin exportar banco de dados wordpress

Clique no botão Executar e salve o arquivo .sql em seu computador.

Se você conseguiu nos acompanhar até aqui, então tem tudo que precisa para passarmos para a próxima fase, que é a de importação do WordPress no seu novo servidor, seja ele local ou remoto.

#3 – Criação do novo banco de dados

Você deverá criar um banco de dados vazio no lugar para o qual deseja migrar o seu WordPress. A base de dados que exportamos anteriormente será importada neste novo banco. Todas as tabelas serão criadas, seguindo as instruções e a estrutura presente no arquivo .sql que exportamos há pouco.

Se você pretende migrar o WordPress para uma hospedagem, acesse o painel de controle de sua hospedagem e faça a criação do banco de dados. Anote as credenciais de acesso ao banco, pois elas serão fundamentais para o sucesso da migração. As informações que você precisa ter são:

  • Nome do host (host name) – pode ser localhost ou mysql.umdominioqualquer.com.br. Verifique junto com sua hospedagem o nome do host que será usado em sua aplicação. Geralmente, ao criar o banco de dados ele já é informado.
  • Nome do banco – geralmente você pode definir o nome ou parte do nome no momento da criação da base.
  • Usuário (user name) – usuário de acesso ao banco de dados.
  • Senha (password) – senha de acesso ao banco.

Se você está migrando o WordPress para um ambiente local, você deve criar o banco da mesma forma, e anotar as credenciais. Nos aplicativos mais populares, como o XAMPP e o EasyPHP, o banco de dados pode ser criado diretamente no PHPMyAdmin.

#4 – Importação do banco de dados

Após a finalização do passo anterior, você terá um banco de dados vazio. Esse é o momento de importar a base de dados. Existem maneiras diferentes de fazer isso. Usuários mais avançados preferem fazê-lo via terminal. Para aqueles que preferem uma solução mais visual, o PHPMyAdmin está aí para ajudar. Você também pode fazer a importação do banco de dados usando um gerenciador externo, como o MySQL Workbench ou o FrontMySQL. Neste exemplo, vamos usar o PHPMyAdmin.

Acesse o PHPMyAdmin de sua nova hospedagem e clique no nome do banco que criou no passo anterior. Ele deverá estar vazio e sem nenhuma tabela.

PHPMyAdmin base vazia

Nas abas superiores, clique na opção Importar e selecione o arquivo .sql que contém a exportação do banco de dados original.

PHPMyAdmin importar base

Se a importação ocorreu com sucesso, você será capaz de visualizar as tabelas do seu WordPress na aba Estrutura.

PHPMyAdmin importação com sucesso

Se você conseguiu importar a base com sucesso, podemos pular para o próximo passo.

Dependendo do tamanho de sua base de dados e das configurações de sua hospedagem, algum erro poderá ocorrer no momento da importação. Não se desespere. Os erros de importação geralmente estão relacionados ao tamanho da base ou à codificação de caracteres. Se o problema estiver relacionado ao tamanho da base, você precisará entrar em contato com a sua hospedagem e solicitar o aumento do limite de importação que está definido no arquivo de configuração do PHP (php.ini). Não se preocupe se você não sabe o que é isso, o suporte de sua hospedagem saberá o que fazer. Se o problema for relacionado à codificação do banco, você precisará exportar novamente a base. Dessa vez, no entanto, escolha a opção Personalizada e defina o tipo de codificação adequada. Geralmente o formato UTF-8 será adequado.

Se ainda assim você não conseguir importar a base, procure pelo código do erro no Google (ou deixe um comentário aqui e faremos o possível para te ajudar). 🙂

#5 – Edição do arquivo de configuração

Antes de começar a mover o WordPress para sua nova casa, é necessário editar o arquivo wp-config.php. Este arquivo é o responsável pela conexão do WordPress com o banco de dados. Sem ele, não é possível colocar o WordPress em funcionamento. Como criamos um novo banco de dados, as credenciais de acesso precisam ser alteradas nesse arquivo, para funcionarem corretamente em sua nova hospedagem.

O arquivo wp-config.php encontra-se na raiz da instalação do WordPress. Acesse o backup que realizamos no passo 1, localize o arquivo e abra-o com um editor de texto plano. Se você não sabe o que é isso, abra o arquivo com o bloco de notas. Caso contrário, use seu editor de código favorito, como o Sublime Text, Atom, Dreamweaver, Notepad++, entre outros.

Ao abrir o arquivo, localize as linhas que contém a conexão com o banco de dados e insira as credenciais de acesso do novo banco.

edite o arquivo wp-config.php de seu WordPress

Após realizar a edição, salve o arquivo.

#6 – Importação dos arquivos

Agora que já atualizamos o arquivo de configuração do WordPress, podemos enviar o backup que fizemos (incluindo o novo arquivo de configuração) para a nova hospedagem do WordPress. Se você está fazendo a migração para um servidor local, basta inserir os arquivos na pasta que será feita a instalação do WordPress. Se você está migrando para uma nova hospedagem, faça o upload dos arquivos usando o método de sua escolha. Nesse caso, vamos usar um programa de FTP.

Os arquivos devem ser migrados para o diretório no qual se deseja instalar o WordPress. Se você deseja ter o WordPress na raiz do domínio, então mova os arquivos para a raiz da pasta pública de sua hospedagem, que será algo como /user_x/public_html/.

faça upload dos arquivos do seu WordPress via ftp

Após fazer o upload dos arquivos, NÃO ACESSE ainda o WordPress. Isso porque as URLs que estão salvas no banco de dados são as antigas. Antes de ter o site funcionando, precisamos fazer a substituição da URL antiga pela nova, no banco de dados. Vamos então, ao próximo e último passo.

#7 – Alteração da URL de instalação do WordPress

Este é o passo final e um dos mais importantes para mover o WordPress com mudança de domínio. Se você conseguiu concluir todas as etapas anteriores e tentar acessar o novo domínio do seu WordPress, provavelmente verá uma página de erro 404. Como explicamos no início, a URL de instalação é gravada no banco de dados. Assim, várias partes do tema utilizam esta informação para carregar itens fundamentais do WordPress, como folhas de estilo, scripts, e todas as páginas do site.

Existem várias maneiras de fazer essa substituição da URL de instalação do WordPress no banco de dados. Os mais habilidosos podem se aventurar a fazer uma query do tipo find and replace. No entanto, existem maneiras mais fáceis e visuais de se fazer essa atualização. Neste artigo, usaremos um script em PHP que nos permite fazer a substituição da URL de instalação em todas as tabelas do banco. A troca é feita em uma interface acessada pelo navegador, na qual é possível visualizar exatamente quantas substituições ocorreram, e onde ocorreram.

Script Database Search and Replace

O script Database Search and Replace foi desenvolvido pela empresa inglesa Interconnect/it, e pode ser baixado gratuitamente aqui. Faça download do script e extraia o conteúdo zipado. Após a descompactação, copie o diretório Search-Replace-DB-master para a raiz da sua nova instalação do WordPress (para onde moveu os arquivos no passo 6). A equipe da Interconnect/it recomenda que você renomeie esta pasta, por uma questão de segurança. Recomendo fortemente que você faça isso, afinal, este script pode acessar e alterar a sua base de dados. Assim, após este procedimento, a raiz de instalação do seu WordPress deverá ter a seguinte estrutura:

/script-buscar-e-substituir-renomeado
/wp-admin
/wp-content
/wp-includes

O próximo passo é acessar, no navegador, a URL que contém o script. Se você moveu o WordPress para a raiz do seu domínio, essa URL deve estar localizada em http://meusitewordpress.com.br/script-buscar-e-substituir/. Caso tenha colocado em outro diretório, inclua-o no caminho, como por exemplo, http://meusitewordpress.com.br/wordpress/script-buscar-e-substituir/.

Você verá então uma tela como essa:

Search and Replace Script

Os campos na linha database deverão vir preenchidos automaticamente com as informações que você inseriu no arquivo wp-config.php. Estas são as credenciais de acesso ao banco de dados e o script as identifica e as utiliza para realizar as edições no banco de dados.

Você deve inserir, no campo replace, a URL antiga de instalação do WordPress (ex.: http://localhost/wordpress). No campo with, insira a nova URL de instalação do WordPress (ex.: http://meusite.com).

Se você quiser se certificar de que está tudo certo e visualizar o que será alterado antes de proceder com a mudança, você pode clicar no botão dry run. Assim, o script vai varrer o seu banco de dados e destacar o que será alterado na prática.

Search Replace passos

Depois de certificar-se que as informações estão preenchidas corretamente, clique no botão live run para iniciar a operação. Um pop up de confirmação aparecerá na tela. Clique em OK e vá em frente.

Concluindo a alteração do domínio no banco de dados

Após a conclusão do processo, você verá na tela tudo o que foi alterado no banco de dados. Caso tenha feito alguma substituição por engano, você deverá importar novamente a base e repetir o processo de busca e substituição no banco de dados.

Importante: após a conclusão do procedimento, você deverá APAGAR o diretório que contém o script do servidor. Este é um item muito importante de se fazer, uma vez que qualquer pessoa que acessar essa página poderia fazer alterações no banco de dados do seu site.
Apagar script search replace

Acesse a nova URL do seu WordPress

Após a conclusão do processo, você poderá acessar o WordPress pela sua nova URL (ex.: meusitewordpress.com.br). O site deverá ser carregado exatamente do jeito que era no antigo servidor, mas com uma nova URL.

É válido mencionar que este procedimento não cobre todos os cenários possíveis. Existem chances de alguma coisa sair diferente do explicado aqui. Caso algo tenha dado errado durante o processo, revise os passos e os procedimentos para identificar a possível causa.

Conclusão

O WordPress é um gerenciador de conteúdo poderoso e, como vimos neste artigo, portátil. O processo descrito aqui pode ser usado para diversos propósitos, desde migrar um site desenvolvido localmente, até fazer uma cópia idêntica para fins de desenvolvimento e testes.

O ambiente de instalação do WordPress pode mudar dependendo do servidor de hospedagem. Por isso, é preciso seguir com atenção cada procedimento e identificar se existe algum aspecto que não está contemplado aqui.

Ficou com alguma dúvida ou dificuldade? Deixe um comentário e teremos prazer em ajudá-lo(a)!

,

Por:

Designer, desenvolvedor web e um dos fundadores do Tudo sobre Hospedagem de Sites. Entusiasta do WordPress e apaixonado por tecnologia em geral. Acredita que a internet está ajudando a tornar o mundo um lugar melhor de se viver. =)

7 Comentários

  1. CRISTOPHER FAORO BERTONI

    Mestre! Muito bem descrito e funcionou perfeitamente.

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Obrigado, Cristopher!
      Fico feliz em saber que o artigo foi útil pra você. 🙂
      Um abraço.

      Responder
  2. Leonardo Borsato

    Excelente artigo Bill! Mas queria uma dica para resolver a minha questão. Estou mudando de domínio e meu site atual tem loja e pedidos quase que diariamente, ou seja, sempre há alterações no bd. No novo domínio eu quero usar o mesmo site, mas com pequenas alterações visuais, como novas imagens e cores por exemplo. Mas como fazer isso antes de migrar e depois atualizar o BD com as tabelas do site que está no ar? Eu fiz esse teste e 90% das alterações que eu havia feito se perderam. Seria algo do meu tema? O problema é que como vou alterar tudo a tempo se eu tirar o site do ar por exemplo por algumas horas. Eu precisaria fazer testes antes. Estou sem saber o que fazer e não achei nada nesse sentido pela internet. O seu artigo foi o que mais se aproximou. Se tiver uma dica, fico muito grato!

    Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Olá, Leonardo!
      Entendo a sua situação. Quando há alterações a todo momento no banco de dados a migração é um procedimento que precisa de muita atenção e planejamento. Mas acredito que existem alguns caminhos para você. Não conheço os detalhes do seu projeto e como está fazendo o desenvolvimento das alterações, mas uma possibilidade seria a seguinte:

      Faça a instalação do WordPress no novo servidor e realize as alterações que desejar no tema. Utilize uma versão importada do banco de dados e não se importe de saber que ela ficará desatualizada ao longo do tempo.
      Quanto estiver satisfeito com as mudanças, faça a importação de uma versão atualizada do banco de dados e proceda com a alteração de URL, como descrita aqui no passo #7. Dessa forma, você terá uma versão atualizada do site, reduzindo a chance de perda de pedidos.

      Possíveis problemas com essa solução estão ligados à customizações que envolvem o banco de dados. Por exemplo, você disse que quer mudar imagens e cores. Se estas mudanças estiverem ligadas ao tema (ex.: no arquivo .css), então não haverá problemas em importar um banco de dados mais recente. No entanto, se estas imagens e cores forem inseridas pelo painel do WordPress (ex.: biblioteca de mídia ou menu “Aparência”), você provavelmente perderá as atualizações após a importação de um banco de dados mais recente. Se este for o caso, então um planejamento mais detalhado deve ser feito, para mapear o que precisa ser alterado após a importação de um banco de dados mais recente e a viabilidade de realizar isso sem prejuízo para o usuário do site.

      Se me permite mais uma sugestão, vale se programar para fazer a migração final em um momento de menor audiência do site, como madrugadas e finais de semana. Isso reduzirá possíveis impactos negativos para os seus clientes.

      Espero ter ajudado! Se quiser passar mais detalhes ou tiver outras dúvidas, basta entrar em contato.
      Um abraço e boa sorte!

      Responder
      • Leonardo Borsato

        Bill, muito obrigado pelas suas sugestões fantásticas. Realmente algumas dificuldades terei que enfrentar e estou pensando em fazer as alterações e anotar tudo que for alterado. Depois, fazer a atualização do bd e verificar o que voltou ao original e refazer rapidamente, já com as configurações anotadas. Neste período, vou tirar a loja do ar e deixar um aviso descolado para criar uma expectativa ao invés de uma frustração. Acho que só assim poderei resolver com o mínimo de problemas.
        Eu só posso agradecer a você mais uma vez por essa ajuda. A partir de já estou seguindo seu blog. Um grande abraço e se me permitir, voltarei aqui para escrever sobre o resultado disso tudo.

        Responder
    • Bill Bordallo
      Cofundador - Tudo Sobre Hospedagem de Sites

      Fico feliz em saber, Luciano! 🙂

      Responder

Deixe um comentário