Use RMAN to Fix a "604" Error on Database Start

Error 604 happened during db open, shutting down database
USER: terminating instance due to error 604

I recently ran into this problem and because I could not find much relevant information to resolve it, I decide to write up my resolution process. I am not sure of all the reasons one can encounter a “604″ error and this process addresses a problem with corrupted blocks.

My Alert log contained an entry, just prior to the “604″, which indicated I had corrupt data blocks in my SYSTEM01.DBF data file.

Corrupt block relative dba: 0×00400037 (file 1, block 55) Fractured block found during buffer read Data in bad block: type: 0 format: 0 rdba: 0×00000000 last change scn: 0×0000.00000000 seq: 0×0 flg: 0×00 spare1: 0×0 spare2: 0×0 spare3: 0×0 consistency value in tail: 0×00001501 check value in block header: 0×0 block checksum disabled Reread of rdba: 0×00400037 (file 1, block 55) found same corrupted data Tue Sep 09 13:27:59 2008 Errors in file d:\oracle\product\10.2.0\admin\fmax\udump\fmax_ora_668.trc: ORA-00604: error occurred at recursive SQL level 2 ORA-01578: ORACLE data block corrupted (file # 1, block # 55) ORA-01110: data file 1: ‘E:\ORADATA\FMAX\ORADATA\FMAX\SYSTEM01.DBF’

At first I ‘googled” a search for the 604 error text and found meaningful information but no clear way of resolving it. Several suggestions referred to using the ‘START MOUNT’ followed with a ‘RECOVER DATABASE’. I tried that and the database did go through recovery but still would not start. After thinking about it a few minutes, I recalled using RMAN to recover corrupted blocks on an already running database. So, I said to myself: ‘Self, why not use RMAN again’? I knew the database would not open bu RMAN should be able to run against a ‘mounted’ database. I then issued the START MOUNT command in SQLPLUS, brought up another command window (this is a Windoze environment) and ran through the RMAN recover corrupt blocks process

RMAN> connect target connected to target database: FMAX (DBID=1458847106) RMAN> backup check logical validate database; Starting backup at 08-AUG-08 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: sid=245 devtype=DISK channel ORA_DISK_1: starting compressed full datafile backupset channel ORA_DISK_1: specifying datafile(s) in backupset input datafile fno=00005 name=E:\ORADATA\FMAX\ORADATA\FMAX\FMAX_DATA.DBF input datafile fno=00001 name=E:\ORADATA\FMAX\ORADATA\FMAX\SYSTEM01.DBF input datafile fno=00003 name=E:\ORADATA\FMAX\ORADATA\FMAX\SYSAUX01.DBF input datafile fno=00006 name=E:\ORADATA\FMAX\ORADATA\FMAX\TOOLS01.DBF input datafile fno=00002 name=E:\ORADATA\FMAX\ORADATA\FMAX\UNDOTBS01.DBF input datafile fno=00004 name=E:\ORADATA\FMAX\ORADATA\FMAX\USERS01.DBF channel ORA_DISK_1: backup set complete, elapsed time: 00:00:25 Finished backup at 08-AUG-08 RMAN> BLOCKRECOVER CORRUPTION LIST; Starting blockrecover at 08-AUG-08 using channel ORA_DISK_1 starting media recovery media recovery complete, elapsed time: 00:00:00 Finished blockrecover at 08-AUG-08 RMAN>

After completing the RMAN recovery, I then issued an ALTER DATABASE OPEN and the database opened just fine. I just hope this little bit of information may help any one else who encounters a similar problem.

Oracle

Comments (0)

Permalink

You Never Forget Your First Love

One of my very first programming jobs was maintaining and developing a large Fortran application. The application consisted of numerous statistical analysis programs used by test developers at Educational Testing Services. So when I received my current Dr. Dobbs email subscription, the following article brought back a lot of fond memories. Because I could not find the actual article on the Dr. Dobbs WEB site, I have reprinted it here. If I eventually locate it, I’ll then include a link.

Fortran: Staying Up to Date

In an industry when things change at GHz speeds, there’s solace in the permanance of tools like Fortran, which has been around since…what, the 1950s? Well “yes,” now that I think about it. John Backus spec’d out the “IBM Mathematical Formula Translating System” in the early 1950s, and delivered the first Fortran compiler in the late 1950s, or thereabout.

Mr. Backus was my kind of guy. When asked many years later why he created Fortran in the first place, he responded that “much of my work has come from being lazy.” He went on to add that “I didn’t like writing programs, and so, when I was working on the IBM 701 (an early computer), writing programs for computing missile trajectories, I started work on a programming system to make it easier to write programs.”

What brought all this to mind is the note from Absoft that it has released the first commercial Fortran IDE for Windows and Linux (and MacOS not far behind). The IDE, which comes bundled with Absoft’s Pro Fortran 10.1 tool suite, supports development for multi-core processor from Intel and AMD by providing auto-parallelization and auto-vectorization. According to Absoft, performance tests with Pro Fortran 10.1 auto-parallelizing and auto-vectorizing compilers have demonstrated superscalar speed improvements on several industry benchmark programs. With the IDE, tools can be run from the GUI or the command line. It also accepts select third-party tools, such as compilers from Apple, GNU, and Microsoft and VNI’s IMSL numerical libraries.

There you have it. Even at 50 years old, Fortran is kicking up its heels. Which makes me wonder: What do you think Ruby or C# will look like 50 years from now?

– Jonathan Erickson
jerickson@ddj.com

Another good Fortran article worth a read locate at Dr. Dobb’s is Fortran and IMSL: It’s MacOS’s Turn

Mainframe
News
Tech of Interest

Comments (0)

Permalink

eHarmony spurns Microsoft, finds match with Oracle 10g

eHarmony’s Vice President of Technology, Mark Douglas, cites SQL Server’s row locking mechanics as the biggest detractor. It appears this was a major roadblock to scaling their application enough to accommodate their fast growth. Find out more from the entire article here…

eHarmony spurns Microsoft, finds match with Oracle 10g

Oracle
SQL Server
Tech of Interest
Uncategorized

Comments (0)

Permalink

My Second Use of Livewriter

This is my second time using Livewriter for this blog. I recently had to re-image my PC and am now in the process of reinstalling most of the software. Naturally, I’ll only install those tools I currently use. Livewriter is definitely on the shortlist.

Tech of Interest

Comments (2)

Permalink

Keeping Your SQL Server Databases Defragmented With Diskeeper

At my organization I am the principal Oracle DBA but recently had to absorb more SQL Server responsibility. As Murphy’s Law would have it; no sooner do I get responsibility for a specific technology I am new to, but the you-know-what hit the fan. To make a long story short, I have to really dive in to extensive reading and research to try and alleviate some dire performance issues . While setting up some new RSS captures I came across this recent article which may just prove to be of enormous benefit. I happen to have used Diskeeper on my personal home system for years and have always been incredibly satisfied with it. 

Physical file fragmentation can hinder SQL Server’s performance. Learn how Diskeeper can help resolve this problem. By Howard Butler Sr. and Michael Materie.

Source: Keeping Your SQL Server Databases Defragmented With Diskeeper (Updated)
Originally published on 5/17/2007 4:11 PM

SQL Server
Tech of Interest

Comments (2)

Permalink

Using an SQL Filter in Outlook 2002/2003

I’ve been using Outlook at work and for my personal mail for years and I have always had issues with the ability to view or segregate my email according to specific criteria. I’ve always felt I was was limited and could not attain the kind of granularity I sometimes desired. I blamed this on the inability to use complex AND/OR logic in the selection process.

Having had a technical career in IT for many years, I’ve subscribed to many newsletters and various groups. Consequently, I receive a fair amount of email on a daily basis. I’m also a pack-rat and I don’t like to discard ANYTHING. Well, at least not anything that is under a few years old. This being the case, my mailbox can become really cluttered, especially if I have not had a chance to read through it in several days succession. We all get busy in our work and our lives at times and it becomes difficult to read all of our mail.

Over the years, I had developed a number or rules to segregate mail from my inbox into appropriate folders. However, as groups have changed their from address or have included other criteria in their name or address, the rules broke down. My rules just were not cutting the mustard.

A few weeks ago while researching a totally unrelated technological issue, I stumbled upon a Google entry with a topic of Dan Brett’s Blog: Give Outlook a GMail Conversation view. I thought this looked pretty interesting! I was familiar with Outlook’s ability to group messages by conversation but was always impressed with GMAIL’s more complete method (replies are grouped into a GMAIL conversation).

Dan’s article revealed to me the ability to use SQL syntax within a View or a Search Folder. Well whatayaknow! Instead of depending on a bunch of rules to try and segregate mail as it comes in, I could enhance the ability to categorize, group, and view my mail by using Search Folders and Views which utilize advanced (but simple to build) SQL queries.

I followed Dan’s article but still ran into some issues when trying to reference the many different context objects which can be referenced in the SQL. I found the objects as documented by Microsoft but had a difficult time understanding their correct use. The Microsoft documentation on this leaves a lot to be desired. However, with some more research, I came across another very fine article: Using a SQL Filter in Outlook 2002/2003 Views. This article pointed out the ability to use the Advanced tab to construct selection criteria with available fields and then switching to the SQL method to manipulate and enhance the generated SQL statement.

As an example: I previously had a Search folder to view all email articles I receive from various Techtarget subscriptions. However, I did not want to see the article which I had committed to the Deleted Items folder. At the time I first constructed the SQL and using the Microsoft context documentation, I could not determine what context to reference or even what to look for in the context. Using knowledge gained from the Using a SQL filter in Outlook 2002/2003 article, mentioned above, I used the Advanced tab to select criteria for excluding a message in the Deleted Items folder

Now… looking at the SQL tab, I could see the generated SQL query

I then copied the generated SQL to notepad so I could combine it with my original Search query. The original query to find all my Techtarget articles looks like this: “urn:schemas:httpmail:fromemail” LIKE ‘%techtarget%’. After including the generated query and changing it to a LIKE operator, I came up with this SQL: “urn:schemas:httpmail:fromemail” LIKE ‘%techtarget%’ AND NOT “http://schemas.microsoft.com/mapi/proptag/0×0e05001f” LIKE ‘%deleted%’.

This criteria now delivers the exact results I am looking for.

Tech of Interest

Comments (0)

Permalink

Darn, I was really hoping I wouldn’t have to re-install .NET 2003

I write very small console apps which run on different servers, some of which cannot yet be upgraded from .NET 1.1 to 2.0.

Why Visual Studio targets only one version of the .NET Framework

.Net

Comments (0)

Permalink

Google on the move again

Looks like Google is shedding any pretense about invading Microsoft territory!

See this Wired blog

News
Tech of Interest

Comments (2)

Permalink

Oracle Doc is Now Google-Friendly

As announced some time ago, official Oracle Documentation is being indexed by Google as we speak.

This
will be a great help to Oracle newbies who otherwise would not have
been exposed to the doc unless they thought to become OTN members.

Oracle

Comments (0)

Permalink

Oracle on Windows Server 2003 x64 Edition

For a very long time Oracle’s threaded architecture had proven to be a major liability when running on Windows. However, with the recent introduction of Windows 64-bit computing, the liability has now become a definite asset.
I recently discovered a blog site dedicated to Oracle on Windows and the blogger, Edward Whalen,  has posted a number of very good articles. Begin by reading his initial article which explains why the threaded architecture is now an asset on Windows 64-bit.
I hope Ed keeps up with his articles. I’ve found them very informative for my own project which is to migrate several 8.1.7.4 DB’s on Windows 2000 to 10.2g on Windows 2003.

powered by performancing firefox

Oracle

Comments (1)

Permalink