Advertisement
Guest User

Untitled

a guest
Nov 7th, 2018
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.46 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. db_host='localhost'
  4. db_user='user'
  5. db_password='password'
  6. databases='mstl'
  7. tmp_dir='/home/tmp'
  8. back_dir='/backup/mstl'
  9. work_dir='/home/mstl/public_html'
  10. backup_name='crm-loc'
  11. current_date=$(date +%d-%m-%Y)
  12. marker='/backup/do_not_remove_this_file'
  13.  
  14. # Check on tmp exist
  15. if ! [ -d ${tmp_dir} ];
  16.     then
  17.         mkdir -p ${tmp_dir}
  18.         # create mysql dump
  19.         mysqldump --host="$db_host" --user="$db_user" --password="$db_password" --databases ${databases[@]} > ${tmp_dir}/${backup_name}_dump-${current_date}.sql
  20.         mysql_dump=${tmp_dir}/${backup_name}_dump-${current_date}.sql
  21.         # create files archive
  22.         tar -cv ${tmp_dir}/${backup_name}_${current_date}_files.tar ${work_dir}
  23.         files_without_sql=${tmp_dir}/${backup_name}_${current_date}_files.tar
  24.         # create of common archive file
  25.         tar -cjf ${tmp_dir}/${backup_name}_${current_date}_full.tar.bz2 ${mysql_dump} ${files_without_sql}
  26.         full_archive=${tmp_dir}/${backup_name}_${current_date}_full.tar.bz2
  27.         mv ${full_archive} ${back_dir} & rm ${files_without_sql} & rm ${full_archive} $ rmdir ${tmp_dir}
  28.     else
  29.         echo 'Tmp exist!'
  30.         # Check on nfs mount.
  31.         if [ -f ${marker} ];
  32.             then
  33.                 echo 'marker found and mount point is correct!'
  34.                 # create mysql dump
  35.                 mysqldump --host="$db_host" --user="$db_user" --password="$db_password" --databases ${databases[@]} > ${tmp_dir}/${backup_name}_dump-${current_date}.sql
  36.                 mysql_dump=${tmp_dir}/${backup_name}_dump-${current_date}.sql
  37.                 # create files archive
  38.                 tar -cv ${tmp_dir}/${backup_name}_${current_date}_files.tar ${work_dir}
  39.                 files_without_sql=${tmp_dir}/${backup_name}_${current_date}_files.tar
  40.                 # create of common archive file
  41.                 tar -cjf ${tmp_dir}/${backup_name}_${current_date}_full.tar.bz2 ${mysql_dump} ${files_without_sql}
  42.                 #tar -cjf ${tmp_dir}/${backup_name}_${current_date}_full.tar.bz2 ${tmp_dir}/${backup_name}_dump-${current_date}.sql ${tmp_dir}/${backup_name}_${current_date}_files.tar
  43.                 full_archive=${tmp_dir}/${backup_name}_${current_date}_full.tar.bz2
  44.                 mv ${full_archive} ${back_dir} & rm ${files_without_sql} & rm ${full_archive} $ rmdir ${tmp_dir}
  45.             else
  46.                 echo ${current_date} 'marker do not found and mount point does not correct!' >> backup_error.log
  47.         fi
  48. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement