다가오는 다음을 향해
[VPS ] PostgresSQL DB 자동 Backup - cron 본문
PostgresSQL DB Backup
스크립트 디렉토리 생성 및 스크립트 작성
스크립트를 저장할 디렉토리 생성 명령어
mkdir -p myfolder/subfolder/subsubfolder
스크립트 파일 생성
vim myfolder/subfolder/subsubfolder/database_backup.sh
i를 눌러 insert mode로 변경
스크립트 내용 입력
#!/bin/bash
# PostgreSQL 컨테이너 이름
CONTAINER_NAME="컨테이너 이름"
# PostgreSQL 연결 정보 설정
DB_USER="사용자이름"
DB_NAME="스키마이름"
DB_PASSWORD="비밀번호"
DATE=$(date +"%Y%m%d%H")
# 호스트 시스템에서의 백업 파일 경로 및 이름 설정
BACKUP_DIR="/data/db/backup"
BACKUP_FILE="$BACKUP_DIR/${DB_NAME}_backup_${DATE}.sql"
# pg_dump 명령어에서 환경 변수를 사용하여 백업
docker exec -t $CONTAINER_NAME pg_dump -U $DB_USER -d $DB_NAME -h localhost -p 5432 > $BACKUP_FILE
echo "Backup completed at $DATE"
:wq! 를 입력하여 스크립트 저장
스크립트 실행
모든 사용자에게 스크립트 실행 권한 부여
chmod +x database_backup.sh
스크립트 실행 명령어
myfolder/subfolder/subsubfolder/database_backup.sh
[실행 예시 화면]
[DB 백업 확인]
cd /data/db/backup
ls
DB 백업 스크립트 자동실행 - cron 작업 스케줄러
crontab 파일 열기
crontab -e
crontab 작업 추가
# 매일 자정 스크립트 실행
0 0 * * * /path/to/database_backup.sh
- 각 별표(*)는 다음을 나타냅니다
- 분 (0 - 59)
- 시 (0 - 23)
- 일 (1 - 31)
- 월 (1 - 12)
- 요일 (0 - 7, 일요일은 0 또는 7)
vim이나 nano와 같은 에디터를 사용하는 경우, 저장 후 종료하려면 :wq (vim) 또는 Ctrl+X 후 Y (nano)를 사용합니다.
'Server > VPS(hostinger)' 카테고리의 다른 글
[VPS Docker] 불필요한 Docker file 삭제 (0) | 2024.01.03 |
---|---|
[VPS Hostinger] Let's Encrypt SSL 인증서 발급 및 Certbot 자동갱신 방법 안내 (0) | 2024.01.02 |
[VPS Docker] Docker PostgreSQL (0) | 2024.01.02 |
[VPS Docker] Docker, Docker Compose 설치, Docker Networt 생성 방법 안내 (1) | 2024.01.02 |
[VPS Hostinger] Timezone 설정 (KST) (1) | 2024.01.02 |