Getting an error when trying to start the database (end-of-file on communication channel)

oracle

I installed Oracle 12c on Ubuntu 3-4 months ago, and it worked perfectly until now. I'm not sure what's causing the error.
Logging in with: sqlplus / as sysdba

Running: SQL> startup
I get the error:

SP2-0642: SQL*Plus internal error state 2133, context 3114:0:0
Unsafe to proceed
ORA-03114: not connected to ORACLE

Running: startup open I get this

SQL> startup open
ORACLE instance started.

Total System Global Area 2483027968 bytes
Fixed Size          2927432 bytes
Variable Size         671089848 bytes
Database Buffers     1795162112 bytes
Redo Buffers           13848576 bytes
Database mounted.

ORA-03113: end-of-file on communication channel
Process ID: 4438
Session ID: 357 Serial number: 16101

I tried searching info on the SP2-0642, and see that things that could cause this kind of error, is if environmental variables end in a /

For example: old LD_LIBRARY_PATH=/Applications/instantclient10_1/
Or if NLS_DATE_FORMAT is entered incorrectly etc. But none of these apply to me, as I have not changed anything. I just turned on my computer, and trying to connect to the database, it gives me the error mentioned above. I'm have no idea what to do, since the solutions described are already as should be (those I found).

One thing I suspect is… I live in Denmark, when it is fall, we change our time, so that it is one hour behind, and when it is spring, we put so it is one hour ahead. So our time will change all of a sudden compared to other countries. And this weekend that has passed, we changed our clock so the time was put one hour ahead. It hits me that is after we changed our clock that I try to restart the database. Could this be the problem? And how can I check this, and if possible, change the timezone when I can't connect to the database?

———————————————Update————————————————–

I found out that (possibly) the real problem is this (seen in the alert log):

ORA-19815: WARNING: db_recovery_file_dest_size of 4781506560 bytes is 100.00% used, and has 0 remaining bytes available.

I should be able to change the size like this:

SQL>  alter system set db_recovery_file_dest_size=20G scope=both;

But since I get the error described above (end-of-file…) I am not able to change or evne see the values of any parameter. Is there some other way to change the size of the db_recovery_file_dest?

Best Answer

If your database is in archive log mode and you don't need it, disable it. This prevents that archive logs are written. Check with archive log list.

If Automatic archival ist enabled, and you don't need online backups, disable it with alter database noarchivelog; – the database needs to be in nomount state to do it.

With rman you can delete the not needed archivelogs (or backups).

  1. rman target /
  2. delete archivelog all
  3. exit

This should clean up your FRA. Of course do this only for testing purposes, don't do this in a production environment! But as you are using Ubuntu as base for your installation I don't think it is a production DB.