0

I've installed Oracle Database Express 10g on Ubuntu, but the following error occures when I try to connect to sql plus using the sysdba as username and it's password which I gave during installation :

ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux Error: 2: No such file or directory
Process ID: 0
Session ID: 0 Serial number: 0

These are some iformations I think they may help :

uname -a

Linux aimad-Vostro-1015 3.11.0-17-generic #31-Ubuntu SMP Mon Feb 3 21:53:31 UTC 2014 i686 i686 i686 GNU/Linux

env | grep ORACLE

ORACLE_SID=XE
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server

sysctl -p |grep kernel

kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
kernel.shmmax = 1073741824

sysctl -a |grep kernel | grep shm

kernel.shm_next_id = -1
kernel.shm_rmid_forced = 0
kernel.shmall = 2097152
kernel.shmmax = 1073741824
kernel.shmmni = 4096

sysctl -a | grep kernel | grep sem

kernel.sem = 250    32000   100 128
kernel.sem_next_id = -1

df -k /dev/shm

Filesystem     1K-blocks  Used Available Use% Mounted on
none             1014392   156   1014236   1% /run/shm

How can I solve this problem ?

  • 2
    sysdba isn't a username. What are you typing exactly to connect? (try sqlplus / as sysdba, logged in as the oracle user) – Mat Mar 3 '14 at 20:02
  • what do you mean by oracle user is it the user I used to install oracle 10g ? – Aimad MAJDOU Mar 3 '14 at 20:08
  • You must be logged in to the OS as the user that installed Oracle (usually called oracle), and then run sqlplus / as sysdba. – Mat Mar 3 '14 at 20:12
  • @Mat well I didn't used the user oracle to install Oracle 10g, instead I used the root user, however when I run sqlplus / as sysdba in both of them this is what I get : ERROR: ORA-12162: TNS:net service name is incorrectly specified – Aimad MAJDOU Mar 3 '14 at 20:15
  • 1
    You don't have a choice with Oracle XE. The SID is XE. – Mat Mar 3 '14 at 20:26
1

You must install Oracle as a non-root user. Generally, that user would be called oracle, but it can be anything, as long as it's not root.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy