Preciso de ajuda para consertar meu script Bash

Preciso de ajuda para consertar meu script Bash

Eu sou um novato em script bash, o que estou tentando fazer é criar um script bash para executar 2 tipos de processo de backup para mysql, primeiro é despejar todo o banco de dados mysql em um único arquivo de despejo e outro é fazer backup de cada banco de dados em um único arquivo, procuro algumas dicas para fazer um script bash e o resultado conforme abaixo, mas parece que não está funcionando como minha expectativa, tento executar o script mas nada acontece, que bom que alguém me ajudou a consertar isto .

#!/bin/bash

TIMESTAMP=$(data "+%d-%m-%Y")
BACKUP_DIR="/nas/mysql"
MYSQL=/usr/bin/mysql
MYSQLDUMP=/usr/bin/mysqldump

backup_all_dump(){
encontre /nas/mysql/all_dump -maxprofundidade 1 -type d -mtime +30 -exec rm -rf {} \;
mkdir -p "$BACKUP_DIR/all_dump/$TIMESTAMP"
  $MYSQLDUMP --force --events --all-databases | gzip > "/$BACKUP_DIR/all_dump/$TIMESTAMP/dump.sql.gz"
}

backup_all_users(){
encontre /nas/mysql/all_users -maxprofundidade 1 -type d -mtime +30 -exec rm -rf {} \;
mkdir -p "$BACKUP_DIR/todos_usuários/$TIMESTAMP"
bancos de dados=`$MYSQL -e "MOSTRAR BANCO DE DADOS;" | grep -Ev "(banco de dados | esquema_de informação | esquema_de desempenho)"`
  para banco de dados em $ bancos de dados; fazer
  $MYSQLDUMP --force --opt --databases "$db" | gzip> "$BACKUP_DIR/all_users/$TIMESTAMP/$db.gz"
feito
}

Responder1

#!/bin/bash

TIMESTAMP=$(data "+%d-%m-%Y")
BACKUP_DIR="/nas/mysql"
MYSQL=/usr/bin/mysql
MYSQLDUMP=/usr/bin/mysqldump

backup_all_dump(){
encontre /nas/mysql/all_dump -maxprofundidade 1 -type d -mtime +30 -exec rm -rf {} \;
mkdir -p "$BACKUP_DIR/all_dump/$TIMESTAMP"
  $MYSQLDUMP --force --events --all-databases | gzip > "/$BACKUP_DIR/all_dump/$TIMESTAMP/dump.sql.gz"
}

backup_all_users(){
encontre /nas/mysql/all_users -maxprofundidade 1 -type d -mtime +30 -exec rm -rf {} \;
mkdir -p "$BACKUP_DIR/todos_usuários/$TIMESTAMP"
bancos de dados=`$MYSQL -e "MOSTRAR BANCO DE DADOS;" | grep -Ev "(banco de dados | esquema_de informação | esquema_de desempenho)"`
  para banco de dados em $ bancos de dados; fazer
  $MYSQLDUMP --force --opt --databases "$db" | gzip> "$BACKUP_DIR/all_users/$TIMESTAMP/$db.gz"
feito
}

Você precisa chamar a função

backup_all_dump

Você precisa chamar a função

backup_all_users

informação relacionada