조회 수 745 추천 수 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
번호 분류 제목 글쓴이 날짜 조회 수
18 코드 Hello, World!를 출력해보자 18 네모 2018.04.21 568
17 코드 [Python] 모 정부기관 사이트 파싱 후 PC 통신처럼 열람하고 싶은 게시글 번호를 입력하면 내용을 보여주는 소스 (허접) 4 이니스프리 2018.09.14 559
16 자료 링크 파싱 애드온용 스킨 (트위터 스타일) 3 file SNAX 2017.10.03 516
15 코드 내가 만든 사칙연산 계산기 title: 대한민국 국기gimmepoint 2018.05.11 515
14 코드 HEX를 RGB로, RGB를 HEX로 바꾸는 PHP 코드 1 네모 2018.05.05 507
13 코드 파이선 셸에서 실행하면...? 3 제르엘 2018.07.22 499
12 코드 c 이진트리 전,중,후위 알고리즘 2 title: 대한민국 국기gimmepoint 2018.04.24 495
11 코드 아주 간단한 기초 C++ 6 제르엘 2018.04.21 477
10 코드 [JS] 클라이언트단 GET Parameter Hanam09 2019.11.16 467
9 코드 JavaScript에서 파이썬 문자열 처리 함수 중 하나 (바인딩)를 구현 7 Seia 2020.01.20 464
8 코드 Koa에서 자동으로 라우팅 채워주기 Seia 2020.01.22 438
7 코드 C언어 삼중자를 이용한 코드 title: 황금 서버 (30일)humit 2018.07.22 410
6 코드 내가 만든 함수 모음집 4 title: 대한민국 국기gimmepoint 2018.05.08 382
5 코드 미완성 받아쓰기 (C) title: 대한민국 국기gimmepoint 2018.04.20 380
4 코드 내가 만든 함수 모음집 2 title: 대한민국 국기gimmepoint 2018.05.12 379
3 내가 만든 merge sort 3 title: 대한민국 국기gimmepoint 2018.05.17 370
2 코드 도박 중독자를 위한 광고 차단 규칙 file 제르엘 2020.08.21 294
1 코드 AWSCLI, in a single file (portable, linux) file Seia 2021.04.10 167
Board Pagination Prev 1 2 3 4 Next
/ 4