Pular para o conteúdo

Backup MySQL com SSH

Dica publicada em Linux / Introdução
Anderson Cristian Loyola da Silva andersonloyola
Hits: 11.563 Categoria: Linux Subcategoria: Introdução
  • Indicar
  • Impressora
  • Denunciar

Backup MySQL com SSH

Primeiramente, você vai ter que seguir um desses artigos, para deixar o SSH sem senha:
$ ssh usuario@servidor.com.br -p 5522 \
   "mysqldump -u usuario -psenha -h localhost baseonline" |
   mysql -u usuario -psenha -h localhost baselocal


Após isso, é só usar o comando acima. Explicarei-o a seguir.

Antes do pipe, em ssh usuario@servidor.com.br -p 5522 "mysqldump -u usuario -psenha -h localhost baseonline", está sendo executado o mysqldump diretamente no servidor e dando o retorno para a sua máquina local. Este retorno é passado para o MySQL da máquina local com o comando mysql -u usuario -psenha -h localhost baselocal, depois do pipe. Dessa forma, o MySQL executa o retorno e copia a base perfeitamente.

Antes de executar esse comando, você vai ter que criar a base na sua máquina local. Exemplo:

Servidor Online
  • HostOnline: rootbrasil.com.br
  • BaseOnline: baseroot

Servidor Local
  • HostLocal: localhost
  • BaseLocal: teste

$ echo "create database teste" |
  mysql -u mysql -p*** -h localhost
$ ssh andercrist@rootbrasil.com.br -p 5522 \
   "mysqldump -u rootbrasil -p*** -h localhost baseroot" |
   mysql -u mysql -p*** -h localhost teste


Nenhuma dica encontrada.

Instalando o Beryl junto com o XGL/Compiz

Instalando o Wink no Ubuntu 13.04 ou superior

Clickjacking - uma breve análise sobre o assunto

Iptables Log Analyzer

Instalando e configurando na mão o PHP 5 e MySQL 5 no Ubuntu 7

#1 Comentário enviado por _m4n14c_ em 03/07/2006 - 22:04h
uma sugestao eh usar a opcao -C no ssh, pois a saida do mysql dump eh texto ascii, e esta opcao habilita a compressao com o gzip, economizando banda.. ficaria assim:

$ ssh usuario@servidor.com.br -C -p 5522 "mysqldump -u usuario -psenha -h localhost baseonline" | mysql -u usuario -psenha -h localhost baselocal

outra ideia, se tiver um pouco mais de folga de processamento e aperto de banda, eh usar o bzip2:

$ ssh usuario@servidor.com.br -p 5522 "mysqldump -u usuario -psenha -h localhost baseonline | bzip2" | bunzip2 | mysql -u usuario -psenha -h localhost baselocal
#2 Comentário enviado por betofortal em 14/10/2008 - 09:57h
Me desculpem se falei alguam besteira mas deixar o ssh sem senha não deixa um furo (ou melhor, um grande buraco) na segurança não???

O tutorial é muito bom. Só este lance do ssh sem senha que me preocupa. Alguem pode opinar?

Parabens pelo tuto!

Contribuir com comentário

Entre na sua conta para comentar.