Mon, 14 May 2007
I run Oracle-XE on Ubuntu and got the error message:
ORA-00257: archiver error. Connect internal only, until freed.
I had previously enabled the archive mode and it seems that the logs had filled up my disk. Now, this is almost certainly the wrong thing to do, but I just deleted the log directories in /usr/lib/oracle/xe/app/oracle/flash_recovery_area/XE/archivelog.
The directory can be determined by running
select member from v$logfile;
Well, the first part of it can, anyway.
Then I restarted the database and the world was put in order. Or at least a small part of it was.
Anyway, archive mode can be enabled with:
shutdown immediate; startup mount; alter database archivelog; alter database open; select log_mode from v$database; alter system archive log start;
and disabled with:
shutdown immediate; startup mount; alter database noarchivelog; alter database open; select log_mode from v$database;
You can see interesting information about the archives with:
archive log list
Tue, 04 Apr 2006
I was creating an Oracle database and got the error message:
ORA 01081 "cannot start already-running ORACLE - shut it down first"
however, I had already stopped everything, and ps showed there were no oracle processes running. It turns out that there were some IPC semaphores and shared memory identifiers which had to be killed before the database could be created.
In my case,
ipcs -a | grep dba
showed the resources that needed to be killed, and ipcrm with the appropriate options kills them. The ID of the resource to kill is in the second column.
ipcs -a | grep dba | perl -ane 'system "ipcrm -$F $F"'