ですが、tarと圧縮にてOSのファイルキャッシュを大量に消費するため、スワップの発生が問題になっていました。
というのは、DBサーバのメモリのほとんどをSGAおよびOracleプロセスに割り当てていたためです。
ファイル操作用のOSファイルキャッシュが不足してスワップ→さらに負荷上昇という悪循環でした。
そこで、OSファイルキャッシュが効かないように、RAWデバイス側で圧縮およびファイル分割まですることにしました。
ファイル分割が終わるまでの時間は長くなりましたが、スワップは発生しなくなりました。
ここでは、バックアップセットを圧縮し、バックアップピースの最大サイズを2GBに制限する設定をします。
分割ファイル名が重複しないよう、formatでピース番号を指定するよう注意してください。
CONFIGURE DEFAULT DEVICE TYPE TO DISK; CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET; CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2G; backup database format '${BKUPDIR}/%d_database_full_%T_%s_%p.bkp' tag = 'full_database_backup';
出力したファイルは次のようになります。
-rw-r--r-- 1 backup backup 2.0G 6月 27 07:27 201106/s01db3/S01_database_full_20110627_4730_1.bkp -rw-r--r-- 1 backup backup 2.0G 6月 27 07:33 201106/s01db3/S01_database_full_20110627_4730_2.bkp -rw-r--r-- 1 backup backup 2.0G 6月 27 07:40 201106/s01db3/S01_database_full_20110627_4730_3.bkp -rw-r--r-- 1 backup backup 139M 6月 27 07:41 201106/s01db3/S01_database_full_20110627_4730_4.bkp -rw-r--r-- 1 backup backup 2.0G 6月 27 07:47 201106/s01db3/S01_database_full_20110627_4731_1.bkp -rw-r--r-- 1 backup backup 2.0G 6月 27 07:52 201106/s01db3/S01_database_full_20110627_4731_2.bkp -rw-r--r-- 1 backup backup 2.0G 6月 27 07:58 201106/s01db3/S01_database_full_20110627_4731_3.bkp -rw-r--r-- 1 backup backup 470M 6月 27 08:01 201106/s01db3/S01_database_full_20110627_4731_4.bkp -rw-r--r-- 1 backup backup 1.4M 6月 27 08:01 201106/s01db3/S01_database_full_20110627_4732_1.bkp