mardi 3 décembre 2024



How to fix errors :

-        ORA-38760: This database instance failed to turn on flashback database

-        ORA-38780: Restore point '<restore_point_name>' does not exist.

Donatien Mbadi

Senior Consultant

 

SYMPTOMS

You have your CDB with PDB(s) with which the flashback was previously configured. You want now to open the database, and you have the below error:

SQL> startup

ORACLE instance started.

 

Total System Global Area 2583690888 bytes

Fixed Size                  9301640 bytes

Variable Size            1174405120 bytes

Database Buffers         1392508928 bytes

Redo Buffers                7475200 bytes

Database mounted.

ORA-38760: This database instance failed to turn on flashback database

 

 

SOLUTION

1-    Check the flashback and then try to turn it OFF.

SQL> select FLASHBACK_ON from v$database;

FLASHBACK_ON

------------------

YES

 

SQL> alter database FLASHBACK OFF;

Database altered.

 

SQL> select FLASHBACK_ON from v$database;

 

FLASHBACK_ON

------------------

RESTORE POINT ONLY

 

2-    Check the restore point from  v$RESTORE_POINT view.

SQL> select name from v$restore_point;

NAME

--------------------------------------

TEST_FLASHBACK

 

3-    Try to drop the restore point

SQL> drop restore point TEST_FLASHBACK;

drop restore point TEST_FLASHBACK

*

ERROR at line 1:

ORA-38780: Restore point 'TEST_FLASHBACK' does not exist.

THIS MEANS THAT THE RESTORE POINT WAS CREATED IN PDB LEVEL.

 

4-    Check the PDB where the restore point was created.

SQL> select name,con_id from v$restore_point;

 

NAME                                        CON_ID

----------------------------                ---------------

TEST_FLASHBACK                               3

 

SQL> sho pdbs

 

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED

---------- ------------------------------ ---------- ----------

         2 PDB$SEED                       MOUNTED

         3 PDBLAB01                       MOUNTED

         4 PDBLAB02                       MOUNTED

 

5-    Move to the PDB and drop the restore point

 

SQL> alter session set container=PDBLAB01;

Session altered.

SQL>

SQL> drop restore point TEST_FLASHBACK;

Restore point dropped.


 

 

SQL> select FLASHBACK_ON from v$database;

FLASHBACK_ON

------------------

NO

 

6-    Now you can easily open your database.

SQL> alter session set container=cdb$root;

Session altered.

 

SQL>

SQL> alter database open;

Database altered.


How to fix errors : -         ORA-38760: This database instance failed to turn on flashback database -         ORA-38780: Restore poin...