Re: Shared Memory Initialisation Problem
Posted in 1999
Patrick Herrera wrote:
>
> Hello all,
>
> Could anyone shed light on why I get the following messages in the
> online.log file every time I try to bring Informix on-line or to
> quiescent mode from off-line.
>
> 15:32:36 shmget: [EEXIST][17]: key 52644801: shared memory already> exists
> 15:32:36 mt_shm_init: can't create resident segment
Are you sure that the engine is offline in the first place and that
there is not another running instance with the same SERVERNUM parameter
in its ONCONFIG file? If not, this usually happens because you had
applications still connected to shared memory when you shutdown the
engine. Running onmode -ky again usually removes the shared memory ids
anyway. You can remove them manually by getting the idss from ipcs.
From the error message I see the keys start with 5264 so:
ipcs | fgrep 5264
and remove any segment reported using ipcrm -m <shmid>.
> No matter how I shutdown the DB, for example from on-line to quiescent
> or directly to off-line (all using onmode), I am unable to restart it.
> The only solution I have found is to restart the entire system.
> My pressing problem is that after initiating a cold, full system
> restore, the DB was unable to come back up as part of the process:
After you perform a restore of IDS, ontape -r (you didn't use ontape -p
did you?), without restoring logical logs, you MUST complete the
logical restore BEFORE shutting down the engine. Do this by running
onmode -m to bring the engine to online mode. Then once the logicalrestore and fast recovery are complete you can shutdown (onmode -ky)
and restart. If you take the engine offline without completing fast
recovery you will get exactly the messages you have seen. There is
nothing you can do about it but perform the restore again!
Art S. Kagel