Skip to Main Content
  • Questions
  • Database corruption these days with Oracle 12c-21c

Breadcrumb

Question and Answer

Chris Saxon

Thanks for the question, John.

Asked: February 04, 2021 - 9:34 pm UTC

Last updated: February 11, 2021 - 2:16 pm UTC

Version: 19c

Viewed 1000+ times

You Asked

Good Afternoon,

In my 20 years of working with Oracle, I am grateful to say that I haven't had to deal with many database corruptions. About 3-4 times I had database corruptions with Oracle 11g running on VMs. Then, a nonprod 9i database that was running an RMAN backup had the filesystem shutdown, which caused a corruption of several database files. That was an odd one.

It is starting to look now that database corruptions are rare. I want you guys to finally set my mind at ease by telling me what causes database corruption nowadays? What are the more common causes of database corruptions in these new Oracle versions?

Also, when I read messages like these in Oracle 19c, it doesn't give me a warm fuzzy that Oracle 19c databases are resilient:
"Back up the database. Before making any major change to a database, always back up the database to protect against any problems. This will be your final backup of the database in NOARCHIVELOG mode and can be used if something goes wrong during the change to ARCHIVELOG mode."

Why would something as simple as changing a database from noarchivelog mode to archivelog mode have a chance of corrupting the database?

Thanks,

John

and Chris said...

As the docs say:

A data corruption occurs when a hardware, software, or network component causes corrupt data to be read or written.

An example of a data corruption is a volume manager error that causes bad disk read or writes. Data corruptions are rare but can have a catastrophic effect on a database, and therefore a business.


As you and the docs note, it's rare you'll hit these issues. Oracle Database has features to help protect you against these failues.

Why would something as simple as changing a database from noarchivelog mode to archivelog mode have a chance of corrupting the database?

There's a couple of things to bear in mind here:

Firstly, there's always a chance of hardware-related database corruption. The point is IF there's a problem switching to archivelog mode AND you DON'T have a (recent) noarchivelog backup... you're in trouble!

Secondly - and more importantly - a person has to make this change somehow. The most likely reason for "corruption" in the switch to archivelog mode is basic human error. If whoever is doing this gets it wrong you could be left with an unusable database. This is really the prime reason you want a backup before making significant changes to the database; everyone makes mistakes sometimes.

Rating

  (2 ratings)

Is this answer out of date? If it is, please let us know via a Comment

Comments

docs link

Rajeshwaran, Jeyabal, February 09, 2021 - 11:16 am UTC

But when you say something like this "As the docs say:" - please be sure to include the docs link, that would help us to get more insights about which documentation guide, cover this in detail along with its chapters.
Connor McDonald
February 10, 2021 - 4:53 am UTC

Well, I just cut-pasted the first sentence into a google search and bingo!

https://docs.oracle.com/database/121/CNCPT/cmntopc.htm#CNCPT89272

A reader, February 10, 2021 - 6:11 pm UTC

Thanks for your insight, Chris. You made it very clear that most database corruptions would occur from human error or hardware-related database corruptions.

John

Chris Saxon
February 11, 2021 - 2:16 pm UTC

You're welcome

More to Explore

Administration

Need more information on Administration? Check out the Administrators guide for the Oracle Database