Why Oracle generates one more backup piece on one backupset? [message #530974] |
Fri, 11 November 2011 11:08 |
edgefree
Messages: 30 Registered: July 2010 Location: Toronto
|
Member |
|
|
Hi Gurus,
I ran into a tough issue, and did Google and search here, I could not find the solution. Wish you could help me out!
I set 'maxopenfiles 4' when allocating channel to sbt in my products env, I got 2 backup pieces in one backup set because that tablespace has 7 datafiles. Other configuration is kept as default, such as no maxsize, no MAXPIECESIZE, and etc setting.
I read document from Oracle. It says:"By default a backup set contains one backup piece. To restrict the size of each backup piece, specify the MAXPIECESIZE option of the CONFIGURE CHANNEL or ALLOCATE CHANNEL commands. " And also, maxopenfiles configure does not force another backup piece generated. So, why do I get another backup piece?
BTW, I tried this on another testing environment. I only get one backup piece even there are more than 2 times maxopnefiles datafiles.
Could you please give me an idea to help me out since one more backup piece causing our backup failed with 3rd party backup SW.
Thank you very much in advance!
Edgy
|
|
|
|
Re: Why Oracle generates one more backup piece on one backupset? [message #530985 is a reply to message #530978] |
Fri, 11 November 2011 11:56 |
edgefree
Messages: 30 Registered: July 2010 Location: Toronto
|
Member |
|
|
Here is some logs:
----------------------------
RMAN> run {allocate channel c1 device type 'sbt_tape' maxopenfiles 6 parms='BLKSIZE=32768 SBT_LIBRARY=/oracle/qa/102/lib/libobk.so';
2> backup check logical tablespace 'CR';
3> }
4>
allocated channel: c1
channel c1: sid=129 devtype=SBT_TAPE
channel c1: Backup/Restore API
Starting backup at 11-NOV-11
channel c1: starting full datafile backupset
channel c1: specifying datafile(s) in backupset
input datafile fno=00008 name=/oracle/qa/sapdata1/cr_1/cr.data1
input datafile fno=00026 name=/oracle/qa/sapdata3/cr_7/cr.data7
input datafile fno=00027 name=/oracle/qa/sapdata3/cr_8/cr.data8
input datafile fno=00010 name=/oracle/qa/sapdata2/cr_3/cr.data3
input datafile fno=00013 name=/oracle/qa/sapdata4/cr_6/cr.data6
input datafile fno=00012 name=/oracle/qa/sapdata3/cr_5/cr.data5
channel c1: starting piece 1 at 11-NOV-11
channel c1: finished piece 1 at 11-NOV-11
piece handle=fsmrdebe_1_1 comment=API Version 2.0,MMS Version 8.1.3.0
channel c1: backup set complete, elapsed time: 00:04:55
channel c1: starting full datafile backupset
channel c1: specifying datafile(s) in backupset
input datafile fno=00009 name=/oracle/qa/sapdata1/cr_2/cr.data2
input datafile fno=00011 name=/oracle/qa/sapdata2/cr_4/cr.data4
channel ch1: starting piece 1 at 11-NOV-11
-------------
When generating 2nd backup piece, it got error to fail create files and then quit.
Please check and help!
|
|
|
|
|
|
Re: Why Oracle generates one more backup piece on one backupset? [message #531274 is a reply to message #530974] |
Mon, 14 November 2011 20:49 |
edgefree
Messages: 30 Registered: July 2010 Location: Toronto
|
Member |
|
|
Hi Gurus,
I was feeling so sorry to helpless. I was telling the truth and list the file and log I got, I didn't try to hide and mislead you.
Fortunately, I found the root cause (at least I thought). I'd like to share here anyway.
All this happy is related to Oracle optimization about DISKRATIO. By default, DISKRATIO=4 if no anywhere to set diskratio or FILEPERSET. And another condition is all datafiles are distributed on different disks. This is about the advanced algorithm of backup set.
Here is the link to Oracle document on 9.2. Others are similar.
http://docs.oracle.com/cd/B10501_01/server.920/a96566/rcmconc1.htm#476761
I did the test in my box. It did work and generate only one backup piece when setting DISKRATIO=0 to disable this feature.
Hope it would be helpful for you.
Edgy
|
|
|
|