Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

What means: Shared memory realm does not exist?

9 views
Skip to first unread message

Some One Else

unread,
Sep 15, 2001, 12:23:12 PM9/15/01
to

In Linux (LM*), I had Oracle 8.1.7 running at least once. Don't know what
I've bumped, but now all I get in a typical session is:

== SQL*Plus: Release 8.1.7.0.0 - Production on ...
==
== (c) Copyright 2000 Oracle Corporation. All rights reserved.
==
== Enter user-name: scott/tiger
== ERROR:
== ORA-01034: ORACLE not available
== ORA-27101: shared memory realm does not exist
== Linux Error: 2: No such file or directory

Looking up the error number does no good. What does it mean that the
'shared memory realm does not exist'. What are typical causes?

Thanks in advance!


Howard J. Rogers

unread,
Sep 15, 2001, 4:21:49 PM9/15/01
to
The absolute bog-standard typical cause as far as my (limited) Linux
experience suggests is that your kernel parameters (sem and shmmax, usually)
were not set to sufficiently high values; or (speaking from bitter
experience) even when you remember to set them to the right values, you
forget to re-boot the Linux box to allow them to take effect.

Regards
HJR

"Some One Else" <alge...@spamcop.net> wrote in message
news:QfLo7.4321$RS3.2...@news1.elcjn1.sdca.home.com...

koert54

unread,
Sep 15, 2001, 5:45:34 PM9/15/01
to
Basically the process your launching can not attach to the shared memory
area that represents your SGA - thus you're using IPC (shared
memory + semaphores) instead of for example TCPIP sockets to communicate
with the database ... meaning - your running the client process on the same
machine as your server and either your ORACLE_HOME or ORACLE_SID is not
correctly set...


"Some One Else" <alge...@spamcop.net> wrote in message
news:QfLo7.4321$RS3.2...@news1.elcjn1.sdca.home.com...
>

Mark D Powell

unread,
Sep 15, 2001, 9:18:40 PM9/15/01
to
"koert54" <koe...@nospam.com> wrote in message news:<2_Po7.55686$6x5.12...@afrodite.telenet-ops.be>...

It is quite possible the 01034 is telling you the truth and Oracle is
no longer running and needs to be restarted.

Try issuing ps -ef | grep ora_ and look for pmon, smon, dbwr etc...

If Oracle is running and you just cannot connect then look at your
environment settings and try checking the listener status.

-- Mark D Powell --

jo...@tman.dnsalias.com

unread,
Sep 15, 2001, 11:35:03 PM9/15/01
to
Howard J. Rogers <howa...@www.com> wrote:
> The absolute bog-standard typical cause as far as my (limited) Linux
> experience suggests is that your kernel parameters (sem and shmmax, usually)
> were not set to sufficiently high values; or (speaking from bitter
> experience) even when you remember to set them to the right values, you
> forget to re-boot the Linux box to allow them to take effect.

Actually, I have seen omission of tuning shmmax and sem to result in an error
in the alert file, something to the effect of "unable to create shared mem
segment of size....". Oracle still starts, but will not be able to use all
of its buffer cache.

The tricky thing is that when you set these to the right values via the
/proc/sys/... interface, they take effect immediately.... but are reset
when you reboot the box :(. You must script somewhere to update them
when the box reboots.

I have 512MB max SGA. This is a line that I put in the local boot file...

echo "512 * 1024^2" | bc > /proc/sys/kernel/shmmax

(kernel 2.4.x)

JT.


>>


Some One Else

unread,
Sep 16, 2001, 1:12:03 AM9/16/01
to
Hello,

I've looked all over the net and through the various Oracle and Linux
documentation, but can't find anywhere that discusses in detail what kernel
parameters are available for tweaking shared memory and how to do it.
Based on a page designed for 9i, here's what I've put in my rc.local file:

echo 250 32000 100 128 > /proc/sys/kernel/sem
echo 256000000 > /proc/sys/kernel/shmmax

This doesn't do the trick. I don't think Oracle is starting up at all based
on what I'm seeing from "ps -A | grep ora" .

On win95, using sqlplus was enough to start the database. This was also
true the first time I started the database when it worked. I've also tried
the 'dbstart' command, but it does nothing -- no messages or anything, and
no 'ps -A' activity afterwards.

I notice in your example that you use a 'bc' command as part of the piping.
What does this do for you? Trying 'man bc' gets me no info.

Thanks for any help!

Howard J. Rogers

unread,
Sep 16, 2001, 1:16:21 AM9/16/01
to
Bugger me, you're absolutely right!

Just catt'ed sem and the nasty old settings are back. Thanks for the tip
(and I believe the Windows version of 9i is out next week, so you can guess
my next step!)

Regards
HJR

<jo...@tman.dnsalias.com> wrote in message
news:H5Vo7.760$g13.7...@typhoon.snet.net...

jo...@tman.dnsalias.com

unread,
Sep 16, 2001, 10:01:18 AM9/16/01
to
Some One Else <alge...@spamcop.net> wrote:
> Hello,

> I've looked all over the net and through the various Oracle and Linux
> documentation, but can't find anywhere that discusses in detail what kernel
> parameters are available for tweaking shared memory and how to do it.
> Based on a page designed for 9i, here's what I've put in my rc.local file:

> echo 250 32000 100 128 > /proc/sys/kernel/sem
> echo 256000000 > /proc/sys/kernel/shmmax

That looks about right.

> This doesn't do the trick. I don't think Oracle is starting up at all based
> on what I'm seeing from "ps -A | grep ora" .

What kind of error do you see? Are you sure that your Oracle env variables
are set OK, esp ORACLE_SID? Try doing "set | grep -i ora".

One way to startup..
sqlplus /nolog
connect sys/xxx as sysdba
startup

Are you sure your initparms are available. Basically if your SID is DB1, this
line should dump out your initfile... "cat $ORACLE_HOME/dbs/initDB1.ora".
Usually there is a symlink at that location pointint to the real location of
the initfile.

See anything in your alert log file?

Are you running a certified Linux distribution? E.g. latest SUSE or RedHat?

Those are some of the things to look for.

> I notice in your example that you use a 'bc' command as part of the piping.
> What does this do for you? Trying 'man bc' gets me no info.

Basically changes "512 * 1024^2" to a real number. The way you are doing it
above you should have no need for bc.

user@srv1:~ > echo "256 * 1024^2" | bc
268435456

which is exactly 256MB.

JT.

Some One Else

unread,
Sep 16, 2001, 3:51:15 PM9/16/01
to
jo...@tman.dnsalias.com wrote:

> Some One Else <alge...@spamcop.net> wrote:
>> Hello,
>
>> I've looked all over the net and through the various Oracle and Linux
>> documentation, but can't find anywhere that discusses in detail what
>> kernel
>> parameters are available for tweaking shared memory and how to do it.
>> Based on a page designed for 9i, here's what I've put in my rc.local
>> file:
>

> One way to startup..
> sqlplus /nolog
> connect sys/xxx as sysdba
> startup
>

Thank you! Thank you!

This may seem dead obvious to you, but I cut my teeth on Win95 PE and never
had to do anything more than click on an icon or open scott/tiger in
sqlplus to get Oracle running.

And, after weeks of wrestling with the special library compatibility issues
with 8.1.7, Oracle started with scott/tiger the first time I tested it
immediately after installation. Perhaps the installation leaves Oracle
running??

Thanks again!

Norman Dunbar

unread,
Sep 20, 2001, 12:16:37 PM9/20/01
to

-----Original Message-----
From: Howard J. Rogers [mailto:howa...@www.com]
Posted At: Sunday, September 16, 2001 6:16 AM
Posted To: server
Conversation: What means: Shared memory realm does not exist?
Subject: Re: What means: Shared memory realm does not exist?


>> Bugger me, you're absolutely right!

I'll pass on that one :o)

Regards, Norman.

------------------------------------------------------------------------
-----
Norman Dunbar EMail: Norman...@LFS.co.uk
Database/Unix administrator Phone: 0113 289 6265
Fax: 0113 289 3146
Lynx Financial Systems Ltd. URL: http://www.Lynx-FS.com
------------------------------------------------------------------------
-----

0 new messages