Backup de Tabelas de Bancos MySQL
#!/bin/bash
#Fl谩vio Silva
#mydump_tabela.sh
#SCRIPT PARA GERAR O DUMP EM tar.gz E MANDAR VIA FTP PARA OUTRA AREA
#vari谩veis $1 = Host_Mysql $2 = Usu谩rio $3 = senha $4 = base
# Verifica se todos os parametros foram informados
if [ -z $4 ]
then
echo “Use: ./mydump_tabela.sh HOST_MySQL Usuario_MySQL Senha_MySQL Base_MySQL”;
exit;
fi
# Dados das variaveis
HOST_MYSQL=$1
USUARIO=”$2″
SENHA=$3
BASE=$4
mkdir $BASE
# Dados do arquivo de backup
# Pega os nomes das tabelas e cria um arquivo com o as tabelas do banco de dados
mysql -h $HOST_MYSQL -u $USUARIO -p$SENHA -D $BASE -s -e “SHOW TABLES” > TABELAS_TMP
cat TABELAS_TMP |
while read TABELA
do
nome_arq=$(echo “$BASE”_”$TABELA”)
# Faz o dump da base de dados
mysqldump -h $HOST_MYSQL –opt –skip-extended-insert -u $USUARIO -p$SENHA –quote-names $BASE $TABELA > $BASE/$nome_arq.sql
done
#remove a tabela tempor谩ria
rm TABELAS_TMP
# Faz o tar gz do arquivo
tar -czf $(echo “$BASE”).tar.gz $(echo “$BASE”)*
#rm -r $(echo “$BASE/”)
exit
echo “Enviar arquivo via FTP?(S/N)”
read RESPOSTA
if [ $RESPOSTA = "S" ]
then
echo “Informe o FTP para conex茫o: ”
read HOST_FTP
echo “Informe o LOGIN DE FTP: ”
read USUARIO_FTP
echo “Informe a senha de FTP: ”
read -s SENHA_FTP
# Acessa o FTP e coloca o arquivo
ftp -in <<EOF $HOST_FTP
user $USUARIO_FTP $SENHA_FTP
bin
put $BASE.tar.gz
bye
EOF
fi
#Remove o arquivo gz
rm -f $BASE.tar.gz



