shared memory not initialized for INFORMIXSERVER
Posted in 2006
Greetings all-
I'm looking for a nudge in the right direction for an issue I'm having.
I'm running IDS 7.31.UD3 on W2k Server SP4.
localhost name is cognos
INFORMIXSERVER=data_archiveI am working at the console of just the server. (not connecting via network)
I am getting an error when running onstat from a command-prompt window. The
caveat is only when oninit is started as a service, but not if started from a
command prompt.
How I start oninit as a service. (standard windows setup I believe)
Verify no oninit.exe in process tab of task mgr.
Start | Programs | Admin tools | Services. Click on "Informix Dynamic Server -
data_archive" service, click start.
(The service executable path is "d:\\\\informix\\\\bin\\\\onscpath.exe data_archive")
Oninit starts and stops just fine from the services mmc. No errors in activity
log.
When started as a service, both oninit.exe and onscpah.exe are in the
processes tab of task manager. When started I can use the command-prompt
locally to run dbaccess and query database(s). Users can also connect remotely
with an application. So everything seems fine. But I can not use the
command-prompt to run onstat. When I do run onstat -l for example, is when I
get the error that "shared memory not initialized for INFORMIXSERVER
'data_archive'"
(When I say the command prompt, I mean the one thats created for you during
install. Located at start | programs | informix | data_archive. It is really
just a shortcut that launches the following: "C:\\\\WINNT\\\\system32\\\\CMD.exe /k
D:\\\\informix\\\\data_archive.cmd")
How I start oninit from the command-line.
Verify no oninit.exe is in processes tab of task mgr.
Start | Programs | Informix | data_archive (using run-as 'informix')
d:> start /b oninit (starts oninit.exe in the background)
I can then run onstat -l and see logical log info.
Both methods use the same onconfig.data_archive file. When run as a service,
oninit gets the onconfig file setting from the registry. (I believe) When run
from the command prompt, oninit gets the same onconfig file setting, but from
the shell variable. (shell variables are configured in the
d:\\\\informix\\\\data_archive.cmd text file)
So, the same onconfig file (onconfig.data_archive) is used by both methods.
Therefore both methods also use the same NETTYPE setting (soctcp,1,,NET). Also
both methods use the same c:\\\\winnt\\\\system32\\\\drivers\\\\etc\\\\services file (1526
turbo).
The registrys sqlhosts settings:
HKLM|SOFTWARE|Informix|OnLine|data_archive|Environment
INFORMIXSQLHSOTS REG_SZ \\\\\\\\cognos
HKLM\\\\SOFTWARE|Informix|SQLHOSTS\\\\data_archive
HOST cognos.fwsd
OPTIONS x=data_archive
PROTOCOL REG_SZ onsoctcp (over-riden by NETTYPE?)
SERVICE REG_SZ turbo
The command-prompts sqlhosts setting (set in d:\\\\informix\\\\data_archive.cmd):
INFORMIXSQLHOSTS=\\\\\\\\cognos
I've been comparing this IDS 7.31 install on our server to an IDS 10 trial
version installed on a w2k pro workstation. I must be missing something,
because the installs look almost identical. But when IDS 10 is run as a
service on my workstation, I can bring up a command-prompt and run onstat just
fine.
Thanks for any suggestions,
Chris