how to repair undo log corruption _ square dba - oracle dba talk
TRANSCRIPT
-
7/30/2019 How to Repair UNDO Log Corruption _ Square DBA - Oracle DBA Talk
1/4
Square DBA Oracle DBA Talk
Home
About
Oracle Sites
RSS
How To Repair UNDO log corruption
May 18th, 2009 Posted in Oracle How-To
Today I had a corrupted segment in my UNDO tablespace. While I have had datafile corruption before I have not seen
UNDO segment corruption. This fix could have been a more drastic, but as it was it ended up being pretty easy.
I first found out there was a problem when one of my databases emailed me that ORA-01034: ORACLE not available ,
ORA-27101: shared memory realm does not exist. Well that is never good. I logged into the server and sure enough the
database was down. I logged into SQLPlus and started the database backup. Everything start fine so I went to look for thecause. The first place I went look is the alert log. As I expected I saw errors like this one.
ORA-00600: internal error code, arguments: [kdourp_inorder2], [44], [0], [48], [44], [], [], []
No DBA ever likes to see ORA-00600. Its too generic tell exactly what is going on and generally means something
simple broke or something is terribly wrong. Now that the database was backup I started to tail the alert log and noticed
more ORA 600 errors, then followed by ORA-00474: SMON process terminated with error and PMON: terminating
instance due to error 474. Ouch database crashed again. It was time to really dig into the issue.
Continuing to review the alert log I went back to the earliest point where the ORA-00600 errors started and found these
errors scattered in the alert log.
ORA-00600: internal error code, arguments: [kdourp_inorder2],
[44], [0], [48], [44], [], [], []
ORA-08007: Further changes to this block by this transaction
not allowed
Doing block recovery for file 21 block 456408
SMON: Parallel transaction recovery slave got internal error
SMON: Downgrading transaction recovery to serial
It looked like I had corruption somewhere. So using this SQL I was able to determine where my issue was:
select
segment_name,
status
To Repair UNDO log corruption | Square DBA - Oracle DBA Talk http://www.squaredba.com/how-to-repair-undo-log-corruption
3/28/2013
-
7/30/2019 How to Repair UNDO Log Corruption _ Square DBA - Oracle DBA Talk
2/4
from
dba_rollback_segs
where
tablespace_name='undotbs_corrupt'
and
status = NEEDS RECOVERY;
My UNDO table space has the corruption. Because I was able to open my database things were looking pretty good. Is I
had pending transaction in my UNDO table space things would have been a bit more tricky. My action pla was to get a
second UNDO table space up as quickly as possible and take offline the current UNDO tablespace. This will stop the
database from crashing.
I created the tablespace with this SQL
create undo tablespace undotbs2 datafile
/u02/oracle/oradata/test/undotbs2.dbf size 500m;
Alter the database to use the new UNDO tablespace.
alter system set undo_tablespace=undotbs2 scope=both;
Then take the original UNDO tablespace offline
alter tablespace undotbs1 offline;
Next drop the corrupted segment.
drop rollback segment "_SYSSMU22$";
Then finally drop the old UNDO tablespace
alter tablespace undotbs1 offline;
Tags: ORA-00474, ORA-00600, ORA-01034, ORA-08007, ORA-27101, Rollback, undo
This entry was posted on Monday, May 18th, 2009 at 11:33 pm and is filed under Oracle How-To. You can follow any responses to this entry through
the RSS 2.0 feed. You can leave a response, or trackbackfrom your own site.
Leave a Reply
Name (required)
Mail (will not be published) (required)
Website
Looking to replace FCSvr?Cantemo Portal is the ideal replacement for Final Cut Server
www.cantemo.com
To Repair UNDO log corruption | Square DBA - Oracle DBA Talk http://www.squaredba.com/how-to-repair-undo-log-corruption
3/28/2013
-
7/30/2019 How to Repair UNDO Log Corruption _ Square DBA - Oracle DBA Talk
3/4
Follow Square DBA
Advertisement
Categories
DBA Thoughts
Oracle Articles
Oracle How-To
Oracle News
Oracle Tip
Site News
Uncategorized
Recent Posts
ORA-01031 when trying to alter user XS$NULL
instance_groups and parallel_instance_group
Find all objects in a tablespace
Move and partitioned index to a new tablespace
Change a tables default tablespace
Tags
3PAR10g11Gagentcarriage returndatabase linksdata warehouseext3filesystemforumsfunctionsgrid controlindexiphoneJFSkill sessionlinuxmoving datanfsobjectsOEMoracleOracle Enterprise ManagerotnPartitioned Tables
RACRECYCLEBINregexReiserReiserFSRMANRollbacksecurityshrinksqlplusstoragesuntablespaceTO_CHARundoupgradewikiWindowswordpressXFS
About me
Visit Oracle Community
RSS
Entries (RSS)
Comments (RSS)
Powered by WordPress | Sacramento Photography | Sacramento News - 27 queries. 1.082 seconds.
To Repair UNDO log corruption | Square DBA - Oracle DBA Talk http://www.squaredba.com/how-to-repair-undo-log-corruption
3/28/2013
-
7/30/2019 How to Repair UNDO Log Corruption _ Square DBA - Oracle DBA Talk
4/4
To Repair UNDO log corruption | Square DBA - Oracle DBA Talk http://www.squaredba.com/how-to-repair-undo-log-corruption
3/28/2013