How to resolve ORA-01172: recovery of thread 1 stuck at block 144 of file 4 and ORA-01151: use media recovery to recover block, restore backup if needed.

  • Post author:
  • Post category:How-To
  • Post last modified:January 14, 2023

Cause Overview

Today there was power failure in my office due to that servers were shutdown suddenly. when the team tries to connect with database server then found error message

“ORA-01033: ORACLE initialization or shutdown in progress
Process ID: 0
Session ID: 0 Serial number: 0

I tried to make database up by restarting ORACLE service but got same error message.

These errors basically say:

ORA-01172 – recovery of thread % stuck at block % of file %
ORA-01151 – use media recovery to recover block, restore backup if needed


There are several steps you can take to resolve the “ORA-01172” error:

  1. Check the alert log for any additional error messages related to the recovery process. This may provide more information on the cause of the problem.
  2. Check the status of the redo logs and control files to ensure they are available and accessible.
  3. Try to recover the database using the “RECOVER DATABASE” command. If this command is unsuccessful, you may need to perform a manual recovery using the “RECOVER DATABASE UNTIL CANCEL” command.
  4. If the issue is related to the redo logs, try to recover the database using a different set of redo logs.
  5. If the above steps do not resolve the issue, you may need to restore a backup of the database and perform a recovery.
  6. If none of the above steps resolve the issue, it may be necessary to contact Oracle support for further assistance.

It’s important to make sure you have a recent backup of your database before trying any recovery or restore procedures to minimize data loss.

So how do I recover from this. The solution is simple, I just needed to perform the following steps:

1. Shutdown the database

SQL> shutdown immediate;
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.

2. Mount the database

SQL> startup mount;
ORACLE instance started.
Total System Global Area 1.0033E+10 bytes
Fixed Size 2934696 bytes
Variable Size 1677723736 bytes
Database Buffers 8321499136 bytes
Redo Buffers 30617600 bytes
Database mounted.

3. Recover the database

SQL> recover database;
Media recovery complete.

4. Open the database with “alter database”

SQL> alter database open;
Database altered.


Leave a Reply