ORA-03113: File End of Communication Channel

Keywords: Oracle rman Database Windows

From --------------------- http://blog.csdn.net/zwk626542417/article/details/39667999


origin

 

Today, as usual, landing PL/SQL did fail. An error "ORA-01034" and "ORA-27101" appeared as follows:


Then it logs in through a command prompt. Oracle To see what's going on, and then the problem goes on, the error "ORA-03113: File End of Communication Channel" process ID:6320 callback ID 191 serial number: 3.


 

Root cause of problem

 

Oracle has made an error, so go to the error log to find the root cause of the problem: find the oracle_ora_6320.trc file under the folder e: app kang diag rdbms oracle oracle trace and open the display error log:

 

  1. Trace filee:\app\kang\diag\rdbms\oracle\oracle\trace\oracle_ora_6320.trc  
  2. Oracle Database 11gEnterprise Edition Release 11.2.0.1.0 - 64bit Production  
  3. With thePartitioning, OLAP, Data Mining and Real Application Testing options  
  4. Windows NT VersionV6.1 Service Pack 1  
  5. CPU                 : 4 - type 8664, 2 PhysicalCores  
  6. Process Affinity    : 0x0x0000000000000000  
  7. Memory (Avail/Total):Ph:2805M/6087M, Ph+PgF:6761M/12173M  
  8. Instance name: oracle  
  9. Redo thread mountedby this instance: 1  
  10. Oracle processnumber: 19  
  11. Windows thread id:6320, image: ORACLE.EXE (SHAD)  
  12.    
  13.    
  14. *** 2014-08-1608:18:55.461  
  15. *** SESSIONID:(191.3) 2014-08-16 08:18:55.461  
  16. *** CLIENT ID:()2014-08-16 08:18:55.461  
  17. *** SERVICE NAME:()2014-08-16 08:18:55.461  
  18. *** MODULENAME:(sqlplus.exe) 2014-08-16 08:18:55.461  
  19. *** ACTION NAME:()2014-08-16 08:18:55.461  
  20.    
  21. ORA-19815: warning:db_recovery_file_dest_size byte (common 4102029312 byte) Already used 100.00%, There are still 0 Bytes are available.  
  22. ************************************************************************  
  23. You have followingchoices to free up space from recovery area:  
  24. 1. Consider changingRMAN RETENTION POLICY. If you are using Data Guard,  
  25.    then consider changing RMAN ARCHIVELOGDELETION POLICY.  
  26. 2. Back up files totertiary device such as tape using RMAN  
  27.    BACKUP RECOVERY AREA command.  
  28. 3. Add disk space andincrease db_recovery_file_dest_size parameter to  
  29.    reflect the new space.  
  30. 4. Delete unnecessaryfiles using RMAN DELETE command. If an operating  
  31.    system command was used to delete files,then use RMAN CROSSCHECK and  
  32.    DELETE EXPIRED commands.  
  33. ************************************************************************  
  34. ORA-19809:Beyond the Restoration File Number Limit  
  35. ORA-19804: Unrecoverable 3396 1984 Byte disk space (from 4102029312 Restriction)  
  36. *** 2014-08-1608:18:55.502 4132 krsh.c  
  37. ARCH: Error 19809Creating archive log file to'E:\APP\KANG\FLASH_RECOVERY_AREA\ORACLE\ARCHIVELOG\2014_08_16\O1_MF_1_159_%U_.ARC'  
  38. *** 2014-08-1608:18:55.502 2747 krsi.c  
  39. krsi_dst_fail: dest:1err:19809 force:0 blast:1  
  40. DDE: Problem Key 'ORA312' was flood controlled (0x1) (no incident)  
  41. ORA-00312: Online Logs 3 Thread 1: 'E:\APP\KANG\ORADATA\ORACLE\REDO03.LOG'  
  42. ORA-16038: Journal 3sequence#159 Unfilable
  43. ORA-19809:Beyond the Restoration File Number Limit  
  44. ORA-00312: Online Logs 3 Thread 1: 'E:\APP\KANG\ORADATA\ORACLE\REDO03.LOG'  
  45.    
  46. *** 2014-08-1608:18:55.565  
  47. USER (ospid: 6320):terminating the instance due to error 16038  


 

 

From here we find the root cause of the problem: "

ORA-19815: Warning: db_recovery_file_dest_size bytes (4102029312 bytes in total) are 100.00% used, and 0 bytes are still available. Db_recovery_file_dest_size, also known as insufficient archive log space, can be easily solved if the root cause of the problem is found.

 

Solutions

 

The space is small, so the way to put it in front of us is to set up a larger space point, and the other is to delete the redundant files, so we will use both methods.

 

Through the command window:

Setting the size of archive log space

  1. sqlplus / as sysdba  
  2. shutdown abort     ----Closing process  
  3. startup mount       ---- Loading database  
  4. select * from v$recovery_file_dest; ---Query archive log  
  5. db_recovery_file_dest_size=10737418240; --Set the archive log space to 10 G  
  6. Exit ---The space size has been set up here.  


 

--------- Delete the archive log

  1. rmantarget / enter the rman tool window
  2. RMAN > cross check archivelog all; -- Run this command to flag invalid expired archivelog.   
  3. RMAN > delete enoprompt archivelog until time "sysdate-3"; - - delete the archive log three days ago.
  4.    


That's all right here. Next, reopen data base Normal use.

 

One thing to note when deleting archives is that the display of archives through the command window is under E: app kang flash_recovery_area oracle ARCHIVELOG, but we can't do it manually. operating system These files are deleted directly because each archivelog is recorded in the control file. When we delete these files in OS, the archivelog information is still recorded in our control file, so these logs will still exist in Oracle's OEM manager. Because when we manually clean the files in the archive directory, these records are not removed from the control file, that is, Oracle does not know that these files no longer exist. So you still need to execute the command to delete these files through the command window.

 

Epilogue

 

Archiving logs are actually for our convenience in restoring the database, but sometimes they do cause us a little trouble, so we need to pay attention to these archiving logs.

origin

 

Today, as usual, landing PL/SQL did fail. An error "ORA-01034" and "ORA-27101" appeared as follows:


Then it logs in through a command prompt. Oracle To see what's going on, and then the problem goes on, the error "ORA-03113: File End of Communication Channel" process ID:6320 callback ID 191 serial number: 3.


 

Root cause of problem

 

Oracle has made an error, so go to the error log to find the root cause of the problem: find the oracle_ora_6320.trc file under the folder e: app kang diag rdbms oracle oracle trace and open the display error log:

 

  1. Trace filee:\app\kang\diag\rdbms\oracle\oracle\trace\oracle_ora_6320.trc  
  2. Oracle Database 11gEnterprise Edition Release 11.2.0.1.0 - 64bit Production  
  3. With thePartitioning, OLAP, Data Mining and Real Application Testing options  
  4. Windows NT VersionV6.1 Service Pack 1  
  5. CPU                 : 4 - type 8664, 2 PhysicalCores  
  6. Process Affinity    : 0x0x0000000000000000  
  7. Memory (Avail/Total):Ph:2805M/6087M, Ph+PgF:6761M/12173M  
  8. Instance name: oracle  
  9. Redo thread mountedby this instance: 1  
  10. Oracle processnumber: 19  
  11. Windows thread id:6320, image: ORACLE.EXE (SHAD)  
  12.    
  13.    
  14. *** 2014-08-1608:18:55.461  
  15. *** SESSIONID:(191.3) 2014-08-16 08:18:55.461  
  16. *** CLIENT ID:()2014-08-16 08:18:55.461  
  17. *** SERVICE NAME:()2014-08-16 08:18:55.461  
  18. *** MODULENAME:(sqlplus.exe) 2014-08-16 08:18:55.461  
  19. *** ACTION NAME:()2014-08-16 08:18:55.461  
  20.    
  21. ORA-19815: warning:db_recovery_file_dest_size byte (common 4102029312 byte) Already used 100.00%, There are still 0 Bytes are available.  
  22. ************************************************************************  
  23. You have followingchoices to free up space from recovery area:  
  24. 1. Consider changingRMAN RETENTION POLICY. If you are using Data Guard,  
  25.    then consider changing RMAN ARCHIVELOGDELETION POLICY.  
  26. 2. Back up files totertiary device such as tape using RMAN  
  27.    BACKUP RECOVERY AREA command.  
  28. 3. Add disk space andincrease db_recovery_file_dest_size parameter to  
  29.    reflect the new space.  
  30. 4. Delete unnecessaryfiles using RMAN DELETE command. If an operating  
  31.    system command was used to delete files,then use RMAN CROSSCHECK and  
  32.    DELETE EXPIRED commands.  
  33. ************************************************************************  
  34. ORA-19809:Beyond the Restoration File Number Limit  
  35. ORA-19804: Unrecoverable 3396 1984 Byte disk space (from 4102029312 Restriction)  
  36. *** 2014-08-1608:18:55.502 4132 krsh.c  
  37. ARCH: Error 19809Creating archive log file to'E:\APP\KANG\FLASH_RECOVERY_AREA\ORACLE\ARCHIVELOG\2014_08_16\O1_MF_1_159_%U_.ARC'  
  38. *** 2014-08-1608:18:55.502 2747 krsi.c  
  39. krsi_dst_fail: dest:1err:19809 force:0 blast:1  
  40. DDE: Problem Key 'ORA312' was flood controlled (0x1) (no incident)  
  41. ORA-00312: Online Logs 3 Thread 1: 'E:\APP\KANG\ORADATA\ORACLE\REDO03.LOG'  
  42. ORA-16038: Journal 3sequence#159 Unfilable
  43. ORA-19809:Beyond the Restoration File Number Limit  
  44. ORA-00312: Online Logs 3 Thread 1: 'E:\APP\KANG\ORADATA\ORACLE\REDO03.LOG'  
  45.    
  46. *** 2014-08-1608:18:55.565  
  47. USER (ospid: 6320):terminating the instance due to error 16038  


 

 

From here we find the root cause of the problem: "

ORA-19815: Warning: db_recovery_file_dest_size bytes (4102029312 bytes in total) are 100.00% used, and 0 bytes are still available. Db_recovery_file_dest_size, also known as insufficient archive log space, can be easily solved if the root cause of the problem is found.

 

Solutions

 

The space is small, so the way to put it in front of us is to set up a larger space point, and the other is to delete the redundant files, so we will use both methods.

 

Through the command window:

Setting the size of archive log space

  1. sqlplus / as sysdba  
  2. shutdown abort     ----Closing process  
  3. startup mount       ---- Loading database  
  4. select * from v$recovery_file_dest; ---Query archive log  
  5. db_recovery_file_dest_size=10737418240; --Set the archive log space to 10 G  
  6. Exit ---The space size has been set up here.  


 

--------- Delete the archive log

  1. rmantarget / enter the rman tool window
  2. RMAN > cross check archivelog all; -- Run this command to flag invalid expired archivelog.   
  3. RMAN > delete enoprompt archivelog until time "sysdate-3"; - - delete the archive log three days ago.
  4.    


That's all right here. Next, reopen data base Normal use.

 

One thing to note when deleting archives is that the display of archives through the command window is under E: app kang flash_recovery_area oracle ARCHIVELOG, but we can't do it manually. operating system These files are deleted directly because each archivelog is recorded in the control file. When we delete these files in OS, the archivelog information is still recorded in our control file, so these logs will still exist in Oracle's OEM manager. Because when we manually clean the files in the archive directory, these records are not removed from the control file, that is, Oracle does not know that these files no longer exist. So you still need to execute the command to delete these files through the command window.

 

Epilogue

 

Archiving logs are actually for our convenience in restoring the database, but sometimes they do cause us a little trouble, so we need to pay attention to these archiving logs.

Posted by lulon83 on Wed, 27 Mar 2019 16:09:32 -0700