vcs/git

Git을 이용한 백업

C/H 2018. 11. 22. 08:30

아래 Git 관련 자동 설정 후 MySQL 비밀번호 설정, 백업 스크립트 작성 후 Cron 등록

Git 설정

  1. 원격 설정
  2. 비밀번호 자동 설정

Mysql login-path 설정

mysql_config_editor set --login-path=[접속명칭] --host=[host 정보] --user=[계정명] --password --port=3306 
#혹은 
mysql_config_editor set --login-path=[접속명칭] --host=[host 정보] --user=[계정명] --password --socket=/tmp/mysql.sock --port=3306 
# 계정 폴더 아래 ~/.mylogin.cnf 생성 
# 설정내역 
mysql_config_editor print --all 
# 접속명칭 삭제 
mysql_config_editor remove --login-path=[접속명칭] 
# 전체 삭제 
mysql_config_editor remove

Bash 백업

```
#!/bin/bash
DATE=`date '+%Y%m%d%H%M%S'`
SVR="{service_name}"
DIR="/home/username/www/$SVR"

# 이동 
cd ${DIR} 

# bash 실행 로그 
`echo "begin: $DATE" >> push.history`

# 백업 
mysqldump --login-path=[접속명칭] --opt --extended-insert $SVR | gzip > $SVR.$DATE.sql.gz
# 과거자료 삭제 
find ${DIR}/$SVR.*.gz -ctime +2 -exec git rm --cached --ignore-unmatch -f {} \; 

# git 백업 
# git gc --aggressive # 기본 2주
# git gc --aggressive --prune=now 
git add .
git commit -m "backup $DATE" 
git push --force
```

Crontab 등록

01 5 * * * /home/username/www/service_name/backup.sh

반응형

'vcs > git' 카테고리의 다른 글

git reset, 복원  (0) 2019.07.19
github.com 탈퇴, 재가입  (0) 2019.02.21
Command Line Git Import  (0) 2018.03.02
Git Reset - Rollback  (0) 2017.06.28
Git config  (0) 2017.06.14