티스토리 뷰

MariaDB(MySQL) DB Backup Dump Script

각 테이블 별로 덤프 파일을 일별로 관리하는 스크립트입니다.

#!/bin/bash

dump_date=$(date +%Y-%m-%d)
backup_root = [stored dump file]
mkdir -p $backup_root/$dump_date
backup_dir=$backup_root/$dump_date
r_date=$(date +%Y-%m-%d --date '3 days ago')

db_list=`mysql -u[account] -p[password] -e "show databases" | tail -n+2`;

for db_name in $db_list; do
    if [ "$db_name" != "performance_schema" -a "$db_name" != "test" -a "$db_name" != "information_schema" ]; then
        /home/mysql/bin/mysqldump -uroot -p[password] --single-transaction $db_name > $backup_dir/$db_name.sql
    fi
done

rm -rf $backup_root/$r_date

위의 스크립트를 crontab 에 넣고 매일 또는 매시간 원하시는 스케쥴링으로 동작시키시면

[stored dump file] 밑에 년-월-일 밑에 db이름.sql 덤프 파일이 생성됩니다.