mysql.sh 1.1 KB

1234567891011121314151617
  1. mysql_dump_name='all_databases'
  2. function mysql_xtra_backup() {
  3. local err=0; local dir=$1;
  4. which innobackupex > /dev/null 2>&1 || { show_error "No innobackupex installed!" "$FUNCNAME"; return 1; }
  5. test -f "/root/.my.cnf" || { show_error "No /root/.my.cnf file with access credintials!" "$FUNCNAME"; return 1; }
  6. test $# -eq 1 || { show_error "Wrong usage of the function! Args=$@" "$FUNCNAME"; return 1; }
  7. test -d $dir/$mysql_dump_name || mkdir -p $dir/$mysql_dump_name
  8. show_notice "Dumping database $db ..." "$FUNCNAME"
  9. {
  10. innobackupex --no-timestamp --rsync $dir/$mysql_dump_name && \
  11. innobackupex --no-timestamp --rsync --apply-log $dir/$mysql_dump_name && \
  12. nice -n 19 ionice -c 3 tar -cf $dir/$mysql_dump_name.tar.$compress_ext --use-compress-prog="$compress_prog" $tar_opts $dir/$mysql_dump_name && \
  13. test -d $dir/$mysql_dump_name && rm -rf $dir/$mysql_dump_name
  14. } || { show_error "Error on dump databuses with innobackupex" "$FUNCNAME"; local err=1; }
  15. return $err;
  16. }