조회 수 856 추천 수 1 댓글 4
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
Extra Form
라이선스 MIT
#!/bin/bash

# Copyright (C) 2017 Study For Us HOSTING (https://hosting.studyforus.com)
# Version infomation : 0.1.1 (Early version)
# License : The MIT License (MIT)

# Local Backup Vars Setting 
BACKUP_DIR='/backup'
BACKUP_EXPIRE_DAYS=14
DB_BACKUP_DIR_NAME="databases"
DB_HOST='DB접속주소'
DB_USER='DB사용자'
DB_PASSWORD='DB암호'

# Backup Date Setting
DN=`date +%Y-%m-%d`
FN=`date +%Y%m%d"_"%H%M%S`

# Messages For Starting Backup
echo "--------------------------------------------------------------------"
echo "                 Study For Us BACKUP Scheduler                      "
echo "                      Veresion 0.1.1                                "
echo "              License : The MIT License (MIT)                       "
echo "--------------------------------------------------------------------"
echo ""
echo "Making DB BACKUP Directory (today).."


# Making DB Backup Directory
mkdir -p $BACKUP_DIR/$DB_BACKUP_DIR_NAME/$DN

echo "done."
echo ""
echo "Delete backup directory older than $BACKUP_EXPIRE_DAYS days.."

# Delete backup directory older than Expire Days
find $BACKUP_DIR/$DB_BACKUP_DIR_NAME/ -maxdepth 1 -type d -mtime +$BACKUP_EXPIRE_DAYS -exec rm -rf {} \;

echo "done."
echo ""
echo "Backup all DBs as each DB files in $BACKUP_DIR/$DB_BACKUP_DIR_NAME/$DN .."

# Getting Information DB Lists
DB_LIST=$(mysql -u $DB_USER --password=$DB_PASSWORD -h $DB_HOST -e "SHOW DATABASES;" --skip-column-names | grep -Ev "(information_schema|performance_schema)")

# DB Backup Start
for db in $DB_LIST;
do mysqldump -u $DB_USER --password=$DB_PASSWORD -h $DB_HOST --opt --single-transaction  -e $db | gzip > "$BACKUP_DIR/$DB_BACKUP_DIR_NAME/$DN/$db-$FN.sql.gz";
done

echo "done."
echo ""
echo "Now Start BACKUP /var/ Directory By Rsnapshot.."
echo "(Contain creating new backup files and removing older backup files)"

# Rsnapshot Backup Start
rsnapshot daily
echo ""
echo ""
echo "ALL DONE. BACKUP COMPLETE."

 

 

현재 세린서버에서 사용중인 백업 소스 입니다.

 

 

sh 명령어들로 구성했기 때문에 리눅스 머신에서만 사용 가능합니다.

 

모든 DB를 각자 파일로 백업 및 웹 폴더를 백업하고 있습니다.

rsnapshot이라는 프로그램을 이용해서 증분백업을 하고 있습니다.

 

보조로 리눅스 머신을 사용하고 Study For Us 에서 백업을 원하는 분들은 이렇게 구성하셔도 도움 될 것 같습니다.

  • ?
    맛수타 2017.10.08 12:27
    앗! 세린 아직도 백업용으로 쓰나요?
    없어진 줄 알았는데 ㅎ
  • ?
    도토리묵 2018.12.28 11:50
    호! backup.sh 식으로 하면 되려나요?
  • profile
    NoYeah 2018.12.28 23:00
    저장은 backup.sh 로 하고

    실행할때는 위에 파일이 있는 경로에서
    ./backup.sh 로 실행하시면 됩니다.
  • ?
    도토리묵 2018.12.29 06:32
    감사합니다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
» 코드 세린서버에서 시도중인 백업 스크립트 입니다. 4 NoYeah 2017.06.27 856
77 자료 소셜XE / 기존 통합 로그인 스킨 V2.2 2 file NoYeah 2017.06.28 1096
76 자료 경험치 현황 위젯 6 file NoYeah 2017.06.28 918
75 자료 Gentelella 3 file NoYeah 2017.06.29 1070
74 자료 Gentelella 레이아웃에 사용가능한 가격 테이블 위젯입니다. 3 file NoYeah 2017.07.03 715
73 자료 AdminLTE용 에디터 스타일 4 file title: 은메달도다 2017.07.07 880
72 코드 엑셀파일 불러서 히스토그램 그려주는 함수 국내산라이츄 2017.08.03 887
71 코드 엑셀 읽어서 그래프 그려주는 함수 1 국내산라이츄 2017.08.03 1576
70 자료 RBGE - 이쁘고 깔끔한 에러페이지 4 file title: 열려라 맛스타의 자물쇠TVJ 2017.08.08 789
69 자료 even_move - 감성적인 에러 페이지 7 file title: 열려라 맛스타의 자물쇠TVJ 2017.08.08 924
68 자료 [XE / Rhymix] Bootstrap 패널 위젯 스타일 file title: 은메달도다 2017.08.09 722
67 자료 [1.8a] Bootstrap 'Panel' 위젯 스타일 1 file title: 은메달도다 2017.08.09 706
66 코드 Git 저장소에서 자동으로 받아 업데이트하는 쉘 스크립트 5 NoYeah 2017.09.16 859
65 자료 [Bootstrap] xeACE 레이아웃 3 title: 은메달도다 2017.09.17 761
64 자료 링크 파싱 애드온용 스킨 (트위터 스타일) 3 file SNAX 2017.10.03 646
63 자료 이게 팔릴까 - Xe/라이믹스 에러페이지 [2017-10-04] 3 file title: 열려라 맛스타의 자물쇠TVJ 2017.10.04 775
62 자료 AdBlock 접근 방지 애드온 v0.1 3 file 네모 2017.10.05 764
61 코드 브라우저 언어에 따라 다른 폴더를 사용하는 PHP 코드 4 file 네모 2017.10.10 937
60 코드 파이썬을 이용한 텔레그램 새 글 알림 (허접합니다) 4 이니스프리 2017.11.19 2561
59 코드 새 글 자동 댓글 스크립트 (AutoHotkey) 9 이니스프리 2017.11.26 3590
Board Pagination Prev 1 2 3 4 Next
/ 4