cron을 이용한 오라클 db백업 중 문의
스크립트 파일을 만들어서
exp id/password file=db.dmp log=test.log full=y
의 내용을 저장하고 이 스크립트를 cron으로 돌렸는데, 잘 안되네요.
로그에 남은 에러 내용은 아래와 같습니다.
다음에 접속됨: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
EXP-00023: 전체 데이터베이스 또는 테이블스페이스 엑스포트를 수행하려면 DBA여야 함
EXP-00030: 입력 내용을 읽는 동안 예상치 못한 파일의-끝(EOF)이 나타났습니다
EXP-00000: 엑스포트가 실패로 끝났습니다
cron으로 안돌리고 그냥 파일을 실행하면
다음에 접속됨: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
EXP-00023: 전체 데이터베이스 또는 테이블스페이스 엑스포트를 수행하려면 DBA여야 함
(2)U(사용자), 또는 (3)T(테이블): (2)U >
라는 메세지가 나오며 그냥 엔터치고나면 아래 처럼 세번 엔터 입력하면
권한부여 엑스포트 (yes/no): yes >
테이블 데이터 엑스포트 (yes/no): yes >
확장 영역 압축 (yes/no): yes >
db.dmp 파일이 생성되는데요.
cron으로 했을때 백업이 안되는 이유가 엔터 입력을 못해서 발생하는건가요? 만약 그렇다면 강제로 하게 해 줄수는 없을까요?
cron을 실행할때
cron을 실행할때 오라클 설치시 만든 계정으로 백업 스크립터를 돌려 주시면 될것입니다.
오라클 설치시 계정이 oracle 이고 백업 스크립터가 export.sh 라면
cron에 /bin/su - oracle export.sh 등록을 해 주면 되겠습니다.
댓글 달기