Delete applied archivelog files

script
archivelog
delete

#1

Standby серверт хэдийн орсон (applied) архив лог файлуудыг автоматаар хэрхэн цэвэрлэх скрипт оруулъя.

vi /home/oracle/crons/remove_applied_archivelog.sh

#!/bin/ksh
#
#
# apply hiigdsen archivelog file uudiig ustgana
#
#       www.batmunkh.net
#

ORACLE_SID=orcl; export ORACLE_SID
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME

tmpfile=/tmp/arch_id.tmp

$ORACLE_HOME/bin/sqlplus -S /nolog <<EOF > $tmpfile
connect / as sysdba
set head off
set pages 0
select max(sequence#) from v\$archived_log where applied = 'YES';
exit
EOF

echo DELETE NOPROMPT ARCHIVELOG UNTIL SEQUENCE = `head -n 1  $tmpfile | awk '{print $1}'` ';' > $tmpfile
#echo DELETE NOPROMPT ARCHIVELOG UNTIL SEQUENCE = `cat $tmpfile ` ';' > $tmpfile

$ORACLE_HOME/bin/rman target / <<EOF
 @$tmpfile
exit
EOF

Файлд permission өгөх

[oracle@orcl crons]$ chmod +x /home/oracle/crons/remove_applied_archivelog.sh

cronjob нэмэх

[oracle@orcl crons]$ crontab -e
05 22 * * * /home/oracle/crons/remove_applied_archivelog.sh

Дээрх үйлдлийг хийж дууссанаар өдөр бүрийн 22:05-д уг скрипт ажиллана.


#2

vi remove_applied_archivelog.sh

ORACLE_SID=orcl; export ORACLE_SID
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME
rman target / <<EOF
delete archivelog all
YES

delete archivelog all хийхэд apply хийгдсэн нь устаад apply хийгдээгүй нь устахгүй warning өгдөг, ингэж хийх нь ялгаатай юу ?


#3

Уул шугамандаа crosscheck ажиллуулсны дараа устгах ёстой тийм үү? файл устгахгүй байна гэдэг нь цаанаа үлдэж байна гэсэн үг. Үлдсэн учир дара сэргээхэд ашиглаж болноо л гэсэн үг. Үр дүн харахад хэдийгээр ижил байгаа ч дүрмийн бус үйлдэл болоод байна л даа. Алдаан дээр INFO төрлөөс өөр алдаа гарахгүй бол уг зүйл маш сайн ажиллаж байнаа л гэсэн үг.
Дээрхи скриптийг standby талдаа л ер нь ашиглана. Primary бол policy-р явнаа. applied on all standby гэх мэт…
Зарим баазууд ч бас архивлогийг үйлдвэрлэх юм аа… тэр үед бас ашиглаж болох л юм…


#4

archivelog policy харъя. Бүгдийг устгах комманд үлдээж байна гэхээр policy-д баригдаж байгаа байх.