Backup do Mysql na linha de comando


1 Estrelas2 Estrelas3 Estrelas4 Estrelas5 Estrelas (2 votos, média: 3.50 de 5)
Loading ... Loading ...

Olá pessoal. Já postei sobre como fazer backups do seu banco Mysql via Phpmyadmin e você já sabe o quanto é importante fazer backups.

Hoje vou ensinar sobre com o fazer backups utilizando o prompt do Mysql.

Utilizar o Phpmyadmin é muito mais prático, mas com o tempo, seu banco de dados vai crescendo, crescendo, crescendo até que o Phpmyadmin não aguenta mais… demora muito pra fazer o download do arquivo, ou se deixar o SQL impresso na tela o navegador vai travar, etc…

Quando fazemos as operações de backup no prompt é muito mais rápido.

O que voê vai aprender á basicamente:

  • Criar um backup do banco de dados;
  • Restaurar um backup;

Então vamos lá!

Para fazer um backup de um banco de dados utilizamos o seguinte comando:

  1. mysqldump  -h HOST -u USER -pSENHA –opt –default-character-set=latin1 BASEDEDADOS > NOME_DO_ARQUIVO.sql
  • HOST: É o host para conectar ao banco de dados. Pode ser ‘localhost’, o IP do servidor ou algum outro endereço do servidor(na Dreamhost é mysql.serdominio.com.br)
  • USER: Usuário para acessar o banco de dados
  • SENHA: A senha do usuário
  • –opt –default-character-set=latin1: Ja tive muitos problemas com acentuação em backups na linha de comando. Esta opção faz o backup com os acentos todos certinhos(pelo menos no meu caso).
  • BASEDEDADOS: O nome do banco de dados que será feito o backup.
  • NOME_DO_ARQUIVO: É o nome do arquivo que será criados. Pode ser um path, ex: c:\arquivo.sql(Windows) ou /home/arquivo.sql(Linux)

Outra vantagem de saber fazer backup na linha de comando é que você pode agendar um script para que ele faça o backup automaticamente diariamente por exemplo.

Para voltar um backup, coisa que pode ser útil caso seu banco de dados sofra alguma perda de dados, é muito simples. Basta rodar o seguinte comando:

  1. mysql -h HOST -u USER -pSENHA BASEDEDADOS < NOME_DO_ARQUIVO.sql

Repara a direção da seta neste comando, esta apontando pro lado do banco de dados(<) diferentemente de quando executamos o backup, que a seta estava apontando pro lado do arquivo(>).

  • HOST: É o host para conectar ao banco de dados.
  • USER: Usuário para acessar o banco de dados
  • SENHA: A senha do usuário
  • BASEDEDADOS: O nome do banco de dados que será receberá os dados.
  • NOME_DO_ARQUIVO: É o nome do arquivo que contém o backup. Aqui pode ser o path também.

[ referências ]
http://dev.mysql.com/doc/refman/4.1/pt/mysqldump.html
http://dev.mysql.com/doc/refman/4.1/pt/mysql.html

Bom, espero ter ajudado. Caso tenha algo a acrescentar ou perguntar por favor poste.

Um grande abraço.

  1. 3 Comentários to “Backup do Mysql na linha de comando”

  2. Parabéns por compartilhar o conhecimento, mas para fazer o backup o correto não seria:
    mysqldump -h HOST -u USER -pSENHA –opt -–default-character-set=latin1 BASEDEDADOS > NOME_DO_ARQUIVO.sql
    (antes de opt e default.. tem dois hifens e você colocou um)?
    Grato,

    ReplyReply

    Por Jeová (1 comments) em 17/11/2010

  3. Ola Jeová tudo bom?

    Você tem razão. O primeiro exemplo eu digitei errado.

    Normalmente quando passamos parâmetros via linha de comando e o parâmetro é apenas uma letra usa-se – (um sinal apenas).
    Quando o parâmetro tem mais de uma letra usa-se — (dois sinais de menos).

    Obrigado pela contribuição!

    ReplyReply

    Por Marcelo Sabadini (109 comments) em 17/11/2010

  4. Estou vendo aqui que eu coloquei certo no post, mas o WordPress ao exibir esta tirando um -

    Vou tentar corrigir isso. Obrigado mais uma vez.

    ReplyReply

    Por Marcelo Sabadini (109 comments) em 17/11/2010

Coloque um Comentário

Links de comentários deveriam estar livres de nofollow.

Get Adobe Flash playerPlugin by wpburn.com wordpress themes