일반적인 경우중 하나인 저의 경우를 올려 드립니다. 참고 되었으면 좋겠네요.
1. 매일 11시 30분에 데이타를 백업받는다. (사용하 않는 시간이라고 생각되서 ^(^)
2. 11시 30분에 동작할 쉘스크립트 하나를 만들고 crontab에 등록 한다.
3. cron_d.sh를 다음과 같이 작성한다.
#!/bin/bash
FILE_LOG="/home/vital/kzspeed/data/`date '+%Y%m%d_%H:%M:%S'`.log"
FILE_DATA="/home/vital/kzspeed/data/kzspeed_`date '+%Y%m%d'`.dmp"
export FILE_LOG FILE_DATA
echo "* KZSpeed Daily Data Backup" | tee /a $FILE_LOG
echo "* Start Time : `date '+%Y년 %m월 %d일 %H:%M:%S' ` " | tee /a $FILE
/home/vital/kzspeed/daily_backup.sh
4. 실제 백업하는 스크립트를 아래와 같이 하나를 더 만든다. ex)daily_backup.sh
pg_dump kzspeed > $FILE_DATA
5. 위와 같이 하면 로그와 kzspeed라는 DB의 모든 데이타를 매일 받을 수 있습니다.
2000년 5월 8일이라면
로그화일(20000508_23:30:00.log)과 백업화일(kzspeed_20000508.dmp) 이
생겨 있을 겁니다.
여기서 2달전의 로그와 백업화일을 지우는 것두 넣어야 되는 데 아직 ^(^.히히.
데이타의 사이즈나 중요도에 따라 스케줄은 달라지기 때문에..
정답은 상황에 따라 적당히... 잡으면 될거 같구요,,
pg_dumpall 보다는 pg_dump를 권하고 싶네요.
DB가 박살나도 DB단위로 박살날거 같구요,,
모든 DB가 깨지는 경우는 하드가 맛이 가는 경우 이겠네요.
그리고 변경 이력만 받는 것은 아직 들어 보지 못했네요.
넗게 더 봐아 겠지만.. ^(^
오라클 같은 DB는 추가/수정한 SQL문장,변경전 데이타, 변경후 데이타를
하나하나 다 기록하는 Log를 가지고 있고 그 Log를 백업 받습니다.
복구는 데이타를 복구하는 것이 아니라 SQL문장을 그래로 다시
실행 시키는 방법으 하고 있지요.. ^(^
감사합니다.
>
> 현재 PostgreSQL 6.5 와 6.4을 모두 사용하고 있습니다.
>
> 궁금한점은,
>
> 1. 일반적인 데이터 백업의 스케쥴은 어떻게 잡는지.
> 스케쥴과 함께 백업방법 예를 들어 crontab에 등록하여 자동으로 백업한다
> 든지 어떤 스크립트를 쓰면 좋다 라는 것이 있으면 알고 싶습니다.
>
> 2. 현재 데이터 백업시 pg_dumpall 을 사용하는데, 이것만으로 되는 것인
> 지.
> 아래 글을 보니 data 디렉토리도 통째로 백업받아 놓는 것이 좋다는 글을
> 봤는데, 이는 어떤 상황에서 어떤 형태로 이용되는지 알고 싶습니다.
> 또한 pg_dumpall 보다 pg_dump로 백업받는게 좋다고 하셨는데, 왜 그런거
> 죠?
>
> 3. DB 운영 중에 데이터 백업을 받아도 상관없는지.
> 백업시 DB접속을 끊고 트랜잭션이 없는 상황에서 받아야하는건가요?
>
> 4. 백업시 기존 백업자료에서 추가 및 변경된 부분만 받을 수 있는지.
>
>
> 감사합니다.
>
>
|