ORA-27121: unable to determine size of shared memory segment

If when you are trying to login to Oracle 10G on linux you get :


ORA-01034: ORACLE not available
ORA-27121: unable to determine size of shared memory segment
Linux Error: 13: Permission denied

This is caused by Oracle installer not setting setuid on $ORACLE_HOME/bin/oracle.
To fix do:


$ cd $ORACLE_HOME/bin
$ chmod 6751 oracle

via http://www.jasonash.com/techblog/index.php/linux/ora-27121-unable-to-determine-size-of-sh

Grid Control access to a Windows server

If you are trying to get Grid Control to access a Windows server and having trouble here’s a few things to check.

  1. Check that the host name credentials you are providing are the same as the user who install the database software on the Windows server.
  2. Check that the user is a member of the ora_dba local group on the server and
  3. Check that the Log on as a batch job local security privilege has been turned on.

Read More »

Show Oracle Database DBID

The database ID or DBID is a unique identification number computed when the database is created.

To find out this number, you can either:

1) Login to RMAN,  it will display the DBID upon connection to the target database.
    e.g. shell> rman target /

or

2) You can obtain the DBID by querying V$DATABASE
   eg.  SQL> select dbid from v$database;

If the database is down and you can’t access either of these two methods. There is a third way.
Assuming you have some RMAN backups for the database, the DBID is the first big number of the backup file.
For instance, if the file name was c-1235460798-20100929-01 then the DBID is 1235460798

Cross checking oracle ArchiveLogs using RMAN in Oracle 8 and 9

In Oracle 10g you can run the following command to crosscheck and expire any expired archive logs:
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;

However in Oracle 8 and 9 you need to do the following

Example for Oracle 8 use:
RMAN> Change Archivelog All Validate;

Example for Oracle 8i use:
RMAN> change Archivelog All Crosscheck;

Example for Oracle 9i:
RMAN> crosscheck archivelog all;