Script backup tự động Oracle database bằng rman thông qua crontab

Script backup tự động Oracle database bằng rman thông qua crontab

– Tạo file kịch bản bacup tự động increamental level0 => lưu ở đường dẫn /home/oracle

su oracle
cd

vi backup_level0.sh

##########################################
#!/bin/bash
# Script to delete archived logs using RMAN
# Set Oracle environment variables (change accordingly)
export ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1
export ORACLE_SID=oradb
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
# Run RMAN command to delete archived logs
rman target / <<EOF
CROSSCHECK BACKUP;
DELETE NOPROMPT EXPIRED BACKUP;
DELETE NOPROMPT OBSOLETE;
CROSSCHECK ARCHIVELOG ALL;
delete noprompt expired archivelog all;
backup incremental level 0 database TAG 'full_backup_level0' ;
ALTER SYSTEM SWITCH LOGFILE;
backup archivelog all;
DELETE ARCHIVELOG UNTIL TIME 'SYSDATE-2';
EXIT;
EOF
echo "Backup thanh cong LV0." >> log_backup.txt
date >> log_backup.txt
#################################################

– gán quyền thực thi cho file

chmod +x backup_level0.sh

– Tạo file kịch bản bacup tự động increamental level1 lưu trong /home/oracle

su oracle
cd

vi backup_level1.sh

##########################################
#!/bin/bash
# Script to delete archived logs using RMAN
# Set Oracle environment variables (change accordingly)
export ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1
export ORACLE_SID=oradb
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
# Run RMAN command to delete archived logs
rman target / <<EOF
CROSSCHECK BACKUP;
DELETE NOPROMPT EXPIRED BACKUP;
DELETE NOPROMPT OBSOLETE;
CROSSCHECK ARCHIVELOG ALL;
delete noprompt expired archivelog all;
backup incremental level 1 database TAG 'backup_level1' ;
ALTER SYSTEM SWITCH LOGFILE;
backup archivelog all;
DELETE ARCHIVELOG UNTIL TIME 'SYSDATE-1';
EXIT;
EOF
echo "Backup thanh cong LV1." >> log_backup.txt
date >> log_backup.txt
#################################################

– gán quyền thực thi cho file

chmod +x backup_level1.sh

– Tạo crontab chạy script tự động

crontab -e
0 0 * * 3,7 /home/oracle/backup_level0.sh
0 0 * * 1,2,4,5,6 /home/oracle/backup_level1.sh

Khuyến nghị:

Level 0: thực hiện backup tuần 2 lần vào thứ 4 và chủ nhật hàng tuần lúc 0:0AM.

Level 1: thực hiện backup trong tất cả các ngày còn lại lúc 0:0AM.

Backup vào thời gian ít tải nhất, thường là ban đêm.

Chúc các bạn thành công.

Datalinks.vn

Hello các bạn, mình là Dương Nguyễn tác giả của blog này. Với gần 20 năm làm việc trong lĩnh vực CNTT, VT trong và ngoài nước, mong muốn được chia sẻ kiến thức và kinh nghiệm về database với các bạn đam mê và quan tâm đến lĩnh vực này. Đặc biệt là #OracleDatabase hoặc luyện thi #OCP database admin. Các bạn cần người đồng hành thì alo mình nhé. Call/Zalo: 0765 871 888. Thanks you !.....
5 1 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest

0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận