1. Home
  2. Backup e restore de banco de dados

Backup e restore de banco de dados

Ganhe tempo e segurança com uma solução automatizada de backups!
Conheça aqui o Backup de Hospedagem Locaweb

Veja abaixo como fazer o backup e restore de sua base de dados por meio de algumas das ferramentas disponíveis online, como o phpMyAdmin e Workbench.

phpMyAdmin

O phpMyAdmin é uma ferramenta desenvolvida por terceiros e, dessa forma, a responsabilidade pelo manuseio do mesmo é do próprio cliente.

01 | Gerar backup MySQL

servidor do banco;
usuário do banco;
senha do usuário do banco;

  • Selecione ao lado esquerdo a base desejada e clique no menu Exportar;
  • Em Export method, selecione a opção Rápido – exibe o mínimo de opções; selecione o formato SQL e clique em Executar;

  • Após isso, será baixado o arquivo em sua máquina.

02 | Restaurar arquivo .SQL

servidor do banco;
usuário do banco;
senha do usuário do banco;

  • Selecione ao lado esquerdo a base desejada e clique no menu Importar;
  • Em File to import, clique em Escolher arquivo para localizar o arquivo. E para concluir, clique no botão Executar;

Se quiser seguir um tutorial mais dinâmico, veja nosso vídeo.:

Caso não consiga restaurar o seu arquivo dessa forma, experimente a restauração pelo Workbench que é ideal para grandes arquivos (a partir 2MB) ou importação de muita informação.


Workbench

O primeiro passo para utilização do Workbench é criar uma instância.

01 | Criar instância

  • Acesse o software e, na página inicial, clique em MySQL Connections +;

  • Na próxima tela, você deverá preencher os campos de conexão com os dados do banco e clicar em Ok:

connection name:
hostname (ip)
username

  • Na próxima janela, no campo password preencha com a senha do usuário do banco e clique em Ok;

  • Seu banco será apresentado no menu lateral esquerdo após a criação da instância.

02 | Criar backup do banco

  • Clique sob o banco desejado e, depois, em Data export;
  • Marque as opções:

Pasta de tabelas
Dump stored procedures and functions
Dump events
Export to dump Project folder

  • Clique em Start Export para iniciar a exportação dos dados;
  • Será apresentado uma tela com as informações de exportação, como na imagem indicando o final da exportação.

03 | Restaurar um banco de dados

  • Clique sob o banco desejado e depois na opção Data import/restore;
  • Marque a opção Import from dump Project folder ou a de arquivo, caso tenha exportado apenas um arquivo de banco ao invés da pasta; selecione o banco a importar e clique em Start Import;

  • Essa importação pode levar um tempo, vai depender dos dados em seu restore. Ao final, serão apresentados os dados importados e a mensagem de sucesso.
  • O Workbench é ideal para exportar e restaurar arquivos de backup com tamanhos maiores de 2MB.

SSH

01 | Backup do banco PostgreeSQL via SSH

Para seguir com esse tutorial você precisará de uma ferramenta que realize o acesso SSH em sua hospedagem.

Backup em formato Binário

Para obter um arquivo de backup em formato binário, basta executar o seguinte comando via SSH

Primeiramente execute:

export PGPASSWORD=SuaSenha

Esse comando atribui sua senha à variável PGPASSWORD.

Logo após:

pg_dump -v -F c -h postgresql01.SeuDominio NomeDaBase -U NomeDoUsuario > ArquivoASerCriado.dmp

Recomendamos utilizar o formato binário caso deseje migrar os dados da base para outro servidor PostgreSQL com a mesma versão

Backup em Formato Texto

Execute o seguinte o comando via SSH:

export PGPASSWORD=SuaSenha

Logo após:

pg_dump -d -v -F p -h postgresql01.SeuDominio NomeDaBase -U NomeDoUsuario > ArquivoASerCriado.sql

Caso a versão do seu Postgre seja 9.0.4 substitua a instrução anterior pela instrução abaixo:

pg_dump -v -F p -h postgresql01.SeuDominio NomeDaBase -U NomeDoUsuario -i > ArquivoASerCriado.sql

Isso porque na versão 9.0.4 não há a opção -d.

Mais detalhes sobre opções válidas para a versão 9.0.4

02 | Restaurar Banco PostgreeSQL via SSH

Neste exemplo usaremos os utilitários ‘pg_restore’ para restore binário e o ‘psql’ para restore em formato de queries (texto). ”’Obs:”’ Podem aparecer mensagens de erro durante a importação relacionadas à criação do schema public ”(por já existir)” e alteração de owner ”(não permitido por questões de segurança)”, mas a importação dos dados ocorrem normalmente. Você deverá se conectar ao servidor web através do protocolo SSH

Restore em formato binário

Para restaurar um arquivo de backup em formato binário obtido pelo utilitário ‘pgdump’, basta executar o seguinte comando via SSH.

export PGPASSWORD=SuaSenha

Logo após:

pg_restore -v -F c -d NomeDaBase -h postgresql01.SeuDominio -U NomeDoUsuario < ArquivoASerRestaurado.dmp

Restore em formato texto

Para restaurar um arquivo de backup em formato texto (no formato de queries), basta executar o seguinte comando via SSH.

export PGPASSWORD=SuaSenha

Logo após:

psql -h postgresql01.SeuDominio -U NomeDoUsuario NomeDaBase -f ArquivoASerRestaurado.sql

01 | Backup do banco MySQL via SSH

Para efetuar um Backup do banco MySQL via SSH execute os comandos :

Para bases MySQL 5.1 (bases adquiridas a partir de janeiro de 2008) Para fazer backup de todas as tabelas

mysqldump -h HOST -u LOGIN -p -R --opt BANCO > backup.sql

Para fazer backup de somente uma tabela

mysqldump -h HOST -u LOGIN -p -R --opt BANCO TABELA > backup.sql

Para fazer o backup com procedures e triggers:

mysqldump -h HOST -u LOGIN -p --opt --routines --triggers BANCO > backup.sql

Para bases MySQL até a versão 5.0 (bases adquiridas até dezembro de 2007) Para fazer backup de todas as tabelas

mysqldump -h HOST -u LOGIN -p --opt BANCO > backup.sql

Para fazer backup de somente uma tabela

mysqldump -h HOST -u LOGIN -p --opt BANCO TABELA > backup.sql
  • A senha será solicitada na sequência;
  • O arquivo .SQL será gerado no nível da estrutura de diretórios em que estiver presente na execução (use o comando pwd para saber o diretório atual).

Encontrando problemas com acentução dos caracteres utilize:

Para Europeu Ocidental (Latin1, iso-8859-1), mais comum no Brasil e no ocidente europeu.

mysqldump -h HOST -u LOGIN -p -R --opt --default-character-set=latin1 BANCO > backup.sql

Para Unicode (utf-8), internacional, com suporte a vários idiomas, inclusive asiáticos.

mysqldump -h HOST -u LOGIN -p -R --opt --default-character-set=utf8 BANCO > backup.sql

Observações:

  • Não se esqueçam de retirar o parâmetro ”-R” caso seja dump de uma base MySQL na versão até 5.0.
  • Caso queira, o script de backup pode ser agendado para execução no “cron”, permitindo que sempre o backup mais atual esteja disponível em sua área. 
  • Importante: Dependendo do tamanho da sua base de dados, você poderá deparar-se com alguma mensagem de erro referente à perda de conexão ou tempo de CPU excedido.

02 | Restaurar Banco MySQL SSH

Restaurando um arquivo.SQL no banco MySQL via SSH

Envie o arquivo .SQL para a sua área de hospedagem por FTP para a pasta public_html
Acesse a Hospedagem por SSH e execute o seguinte comando:

cd public_html

Após acessar a pasta que contém o arquivo .sql, execute o comando:

mysql -h mysql01.SeuDominio -u SeuLogin -pSuaSenha -D SuaBase < arquivo.sql

Não dê espaço ao informar a senha da base no parâmetro ”’-p”’. Para resolver possíveis problemas de acentuação, é possível forçar o restore, veja como:

Europeu Ocidental (Latin1, iso-8859-1), usado muito no Brasil e no ocidente da Europa.

mysql -h mysql01.SeuDominio -u SeuLogin -pSuaSenha -D SuaBase --default-character-set=latin1 < arquivo.sql

ou

mysql -h mysql01.SeuDominio -u SeuLogin -pSuaSenha -D SuaBase --default-character-set=latin1 < *.sql

Unicode (utf-8), internacional, com suporte a vários idiomas, inclusive asiáticos.

mysql -h mysql01.SeuDominio -u SeuLogin -pSuaSenha -D SuaBase --default-character-set=utf8 < arquivo.sql

Restaurando em uma nova base

Caso você esteja utilizando um arquivo ‘.sql’ gerado de outra base de dados, ou seja, base de dados com nome diferente da base para a qual você quer importar, você poderá receber erro de permissão ao restaurar.

Para solucionar este problema você precisará: Fazer uma cópia de seu arquivo ‘.sql’.
Editar seu arquivo ‘.sql’ através de um editor de texto ou utilizando no via SSH o comando ‘vi nomedeseubackup.sql’.

Exclua as linhas ‘CREATE DATABASE’ e linha ‘USE nomedabase’.

Outros exemplos

Veja abaixo outros exemplos que deverão ser alterados em seu banco de dados antes da importação

Altere: CREATE ALGORITHM=UNDEFINED DEFINER=`usuario`@`localhost` SQL SECURITY DEFINER VIEW `nome_da_view`… Para: CREATE VIEW `nome_da_view`…

Altere: CREATE DEFINER=`usuario`@`localhost` PROCEDURE `nome_procedure`… Para: CREATE PROCEDURE `nome_procedure`…

Altere: CREATE DEFINER=`usuario`@`localhost` FUNCTION `nome_da_funcao`… Para: CREATE FUNCTION `nome_da_funcao`…

Altere: CREATE DEFINER=`usuario`@`localhost` TRIGGER `minha_trigger`… Para: CREATE TRIGGER `minha_trigger`…

Salve as alterações e importe normalmente.
Se desejar assista ao video tutorial:

Aproveite e conheça outros produtos da Locaweb, como o Hospedagem de SitesVPS e saiba mais!

Este artigo foi útil ?