수색…


통사론

  • 이 스크립트를 사용하면 다음 구문을 사용하여 각 실행에 대한 백업 디렉토리를 만들 수 있습니다. 데이터베이스 백업 디렉토리 이름 + 실행 날짜 및 시간
  • 예 : prodDir22-11-2016-19h55
  • 생성 된 후 다음 구문을 사용하여 두 개의 백업 파일을 만듭니다. 데이터베이스 이름 + 실행 날짜 및 시간
  • 예 :
  • dbprod22-11-2016-19h55.backup (덤프 파일)
  • dbprod22-11-2016-19h55.sql (sql 파일)
  • 22-11-2016 @ 19h55 에 한 번 실행이 끝나면 다음 과 같이 표시됩니다.
  • /save_bd/prodDir22-11-2016-19h55/dbprod22-11-2016-19h55.backup
  • /save_bd/prodDir22-11-2016-19h55/dbprod22-11-2016-19h55.sql

매개 변수

매개 변수 세부
save_db 기본 백업 디렉토리
dbProd 보조 백업 디렉토리
날짜 지정된 형식으로 백업 한 날짜
dbprod 저장할 데이터베이스의 이름
/opt/postgres/9.0/bin/pg_dump pg_dump 바이너리의 경로
-h 서버가 실행중인 시스템의 호스트 이름을 지정합니다 (예 : localhost).
-피 서버가 연결을 수신 대기하는 TCP 포트 또는 로컬 Unix 도메인 소켓 파일 확장자를 지정합니다 (예 : 5432).
-유 연결할 사용자 이름입니다.

비고

  1. HDPS 또는 Symantec Backup 과 같은 백업 도구가있는 경우 ... 시작할 때마다 백업 디렉터리를 비우는 것이 필요합니다.

이전 파일의 백업이 완료되어야하기 때문에 백업 도구가 어지럽히 지 않도록하십시오.

이 기능을 사용하려면 N ° 3 줄의 주석 처리를 제거하십시오.

rm -R / save_db / *
  1. 예산이 백업 도구를 허용하지 않는 경우에는 항상 작업 계획자 ( cron 명령 )를 사용할 수 있습니다.

다음 명령은 현재 사용자의 cron 테이블을 편집하는 데 사용됩니다.

crontab -e

오후 11시에 캘린더를 사용하여 스크립트 시작 일정을 계획하십시오.

0 23 * * * /saveProdDb.sh

saveProdDb.sh

일반적으로 pgAdmin 클라이언트를 사용하여 DB를 백업하는 경향이 있습니다. 다음은 두 가지 형식으로 데이터베이스를 저장하는 데 사용되는 sh 스크립트입니다 :

  • SQL 파일 : 모든 버전의 PostgreSQL에서 가능한 데이터 재개.

  • 덤프 파일 : 현재 버전보다 상위 버전입니다.

#!/bin/sh
cd /save_db
#rm -R /save_db/*
DATE=$(date +%d-%m-%Y-%Hh%M)
echo -e "Sauvegarde de la base du ${DATE}"
mkdir prodDir${DATE}
cd prodDir${DATE}

#dump file
/opt/postgres/9.0/bin/pg_dump -i -h localhost -p 5432 -U postgres -F c -b -w -v -f "dbprod${DATE}.backup" dbprod

#SQL file
/opt/postgres/9.0/bin/pg_dump -i -h localhost -p 5432 -U postgres --format plain --verbose  -f "dbprod${DATE}.sql" dbprod


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow