Skip to main content

Restaurando Backup SQL via SSH

Após ficar alguns dias fora do ar migrando os dados de servidor, precisei restaurar alguns backups SQL dos bancos de dados. E já precisei fazer isso outras vezes para o Magento também.

Como já vimos aqui no blog, é possível fazer backup dos dados da sua loja Magento de forma simples e rápida. Já para restaurar esse backup as coisas podem se complicar um pouco.

Primeiro porque na administração do Magento não existe um botão do tipo “clique aqui e restaure suas tabelas“. Claro que, se você tiver uma base espelhada (recomendável para grandes empresas) então você poderia usar o Database Repair Tool já comentado aqui no blog.

O ideal para recuperar seu backup, seria acessar sua base MySQL, talvez pelo sistema do phpMyAdmin e usar a opção de importação, onde você apenas aponta o arquivo e ele faz todo o trabalho sujo pra você.

Acontece que a maioria dos servidores possuem restrições de tamanho e limite de tempo, em sua maioria bem reduzidos. E os arquivos de backup SQL geralmente ultrapassam em muito esses limites. Então como fazer?

Talvez o suporte da sua hospedagem solicite que você envie o arquivo SQL para que eles rodem direto no servidor. Mas se você tem um arquivo acima de 60 mega e quer fazer por conta própria, então vai precisar se conectar remotamente a sua base de dados MySQL e rodar o script de backup SQL.

Uma das formas de se conectar remotamente é usando SSH, que veremos nesse exemplo, você também poderia usar uma IDE (outros programas) que fazem conexão remota com banco de dados.

Dica: Em alguns servidores para conseguir acesso remoto usando IDE’s você precisa liberar o IP da sua máquina nas configurações do servidor.

Para deixar o processo mais simples, eu enviei o arquivo SQL por FTP para meu servidor de hospedagem, diretamente na pasta raiz (root), antes de executar os comandos abaixo.

Abra seu terminal SSH e digite o seguinte (aqui testado no terminal de um Mac Os X):

[html]ssh meulogin@ftp.meudominio.com[/html]

Se for seu primeiro acesso, ele vai dar um aviso de segurança e solicitar uma confirmação do tipo (yes/no). Em seguida ele solicita sua senha de conexão do FTP. Assim que você informar a senha corretamente, estará conectado remotamente ao seu servidor e pode enfim executar o comando de restauração do banco. Para isso digite:

[sql]mysql –user=usuariodobanco –password=senhadobanco –host=mysql.seudominio.com nomedodatabase < nomedoarquivo.sql[/sql]

Dica: Estes dados você precisou fornecer durante a instalação do Magento, se não lembra, entre em contato com suporte da sua hospedagem ou dê uma lida em re-editando configurações de instalação.

Basta digitar os dados acima corretamente e aguardar. Quanto menor o arquivo mais rápido ele vai terminar, óbvio. Aguarde o prompt de comando ficar disponível novamente, não tem mensagem de sucesso ao finalizar.

Para saber se deu certo, faça um teste, acesse seu banco de dados, veja no phpMyAdmin.

Para fechar a conexão do SSH digite: exit;

Sucesso!