1

I am creating a tar.gz of database hot backup files.

During execution of tar command, I am getting this warning for only this file every time I run tar:

/u01/app/oracle/oradata/db5/sysaux01.dbf: file changed as we read it

I intend to perform clones and recoveries of Oracle database using this tar file. Will it cause problems?

1

As you have said, you are trying to create a hot image copy backup for cloning and recovery purposes, it's not the recommended way to take image copy backup. The file may contain fractured blocks-which have been changed during the copy command(tar in your case). The tar command has no intelligence to check whether the block has been changed or not during the archiving process resulting broken block known as split or fractured blocks included in the file.

Warning from tar command has spoken the same theme as I mentioned here. The file was being modified by Oracle processes, possibly doing read/write operations, as you said, you were trying to archive these files while the database is up and running.

Instead, if you use RMAN it has the ability to know whether the block is fine or changed by comparing the header and tail of a data block.

Documentation: RMAN Backup Concept/Image Copy Backup

| improve this answer | |
1

What you doing is perfectly fine as long as you issue

ALTER DATABASE BEGIN BACKUP;

before you archive the data files and

ALTER DATABASE END BACKUP;

afterwards.

It is normal for tar to complain if files are modified while it processes them, and that is no problem. Archive recovery will repair the damage.

With GNU tar, you can distinguish that from the return code:

  • If a file changed, the return code will be 1.

  • If there is a serious error, the return code will be 2.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.