Good day! Need help here, I've been having problem initializing Informix.
Whenever I execute oninit -i, I receive error message "fatal error in shared memory initialization". And if I look at the online.log file, it states that "The chunk <path> must have owner-ID and group-ID set to Informix".
This error puzzles me, coz I've set the permissions (660) and user and group ownership to informix. What seems to be the problem????
Is the logfile correct or there's a problem with my configuration??? Hope you could help me ASAP, thanx.
this error "fatal error in shared memory initialization" occurs after you perform the oninit -i command after the first time...you should only be intializing your Instance once (oninit -i) and then never again. Once you re-initalize it with the -i option, you loose all your data (ie, dbspaces, chunks that were created prior to the initialization).
If you use Unix system (such as Solaris or HP Unix), try to use command
"ps -ef | grep oninit" to check wheter you have another database instance running
on your database server.
Try to check your user and user priviledge and environment parameter that your user can initial your informix database engine. Especially INFORMIXSERVER
parameter that is the exact database server name which you want to initialize.
This is the first instance, because I've installed Unix and Informix for the first time. After configuring onconfig file and editing the Unix kernel parameters, I'm trying to initialize the informix database.
* I have an existing working Informix on an SCO OpenServer 5 on server A.
* I have a spare server B and installed an SCO OpenServer 5 (identical to server A).
* Since I don't have an Informix installation program, I backed up the entire Informix directory on server A and restored it on server B.
* I created a user and group Informix on Server B w/c is again identical to server A including profile, home directory and ID etc.
* I created a RAW device on server B w/c is also identical in size and name as server A.
* I made the proper permissions on the RAW device w/c is 660 to user and group Informix.
* Afterwhich, created the link at the path specified on the ONCONFIG file.
* Edited the Unix kernel parameters: SHMMAX (409600000); SEMMNI (8192); SEMMNS (8192); SEMMAP (8192); SEMMNU (100).
* Linked the kernel and reboot the machine.
* Logged in as informix, and executed oninit -i.
* Then I encountered this problem.
Actually, I've already done this on the same server B but my server A is our Informix test server and it worked. Now, my server A is our Informix production server.
I think you may check for some environment parameter, especially
if you have restore informix program in a different directory from
your informix home directory. It may cause your instance cannot
find your onconfig and sqlhosts file correctly.
Please check your necessary environment parameter as following.
It should be better, if you post values of these parameters on these
web board for me to analyse?
LOGFILES 20 # Number of logical log files
LOGSIZE 20000 # Logical log size (Kbytes)
MSGPATH /u/informix/online1.log # System message log file path
CONSOLE /dev/null # System console message path
ALARMPROGRAM /u/informix/log_full1.sh # Alarm program path
# System Archive Tape Device
TAPEDEV /dev/null # Tape device path
TAPEBLK 16 # Tape block size (Kbytes)
TAPESIZE 10240 # Maximum amount of data to put on tape (Kbytes)
# Log Archive Tape Device
LTAPEDEV /dev/null # Log tape device path
LTAPEBLK 16 # Log tape block size (Kbytes)
LTAPESIZE 10240 # Max amount of data to put on log tape (Kbytes)
STAGEBLOB # INFORMIX-OnLine/Optical staging area
# System Configuration
SERVERNUM 0 # Unique id corresponding to a OnLine instance
DBSERVERNAME mib1dbsvr1 # Name of default database server
DBSERVERALIASES # List of alternate dbservernames
NETTYPE ipcshm,,, # Configure poll thread(s) for nettype
NETTYPE tlitcp,,, # Configure poll thread(s) for nettype
DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed env.
RESIDENT 0 # Forced residency flag (Yes = 1, No = 0)
MULTIPROCESSOR 0 # 0 for single-processor, 1 for multi-processor
NUMCPUVPS 1 # Number of user (cpu) vps
SINGLE_CPU_VP 0 # If non-zero, limit number of cpu vps to one
NOAGE 0 # Process aging
AFF_SPROC 0 # Affinity start processor
AFF_NPROCS 0 # Affinity number of processors
# Shared Memory Parameters
LOCKS 2000 # Maximum number of locks
BUFFERS 200 # Maximum number of shared buffers
NUMAIOVPS # Number of IO vps
PHYSBUFF 32 # Physical log buffer size (Kbytes)
LOGBUFF 32 # Logical log buffer size (Kbytes)
LOGSMAX 20 # Maximum number of logical log files
CLEANERS 1 # Number of buffer cleaner processes
SHMBASE 0x10000000 # Shared memory base address
SHMVIRTSIZE 8000 # initial virtual shared memory segment size
SHMADD 8192 # Size of new shared memory segments (Kbytes)
SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
CKPTINTVL 300 # Check point interval (in sec)
LRUS 8 # Number of LRU queues
LRU_MAX_DIRTY 60 # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY 50 # LRU percent dirty end cleaning limit
LTXHWM 50 # Long transaction high water mark percentage
LTXEHWM 60 # Long transaction high water mark (exclusive)
TXTIMEOUT 0x12c # Transaction timeout (in sec)
STACKSIZE 32 # Stack size (Kbytes)
# System Page Size
# BUFFSIZE - OnLine no longer supports this configuration parameter.
# To determine the page size used by OnLine on your platform
# see the last line of output from the command, 'onstat -b'.
# Recovery Variables
# Number of parallel worker threads during fast recovery or an offline restore.
# Number of parallel worker threads during an online restore.
OFF_RECVRY_THREADS 10 # Default number of offline worker threads
ON_RECVRY_THREADS 1 # Default number of online worker threads
# Data Replication Variables
# DRAUTO: 0 manual, 1 retain type, 2 reverse type
DRAUTO 0 # DR automatic switchover
DRINTERVAL 30 # DR max time between DR buffer flushes (in sec)
DRTIMEOUT 30 # DR network timeout (in sec)
DRLOSTFOUND /u/informix/etc/dr.lostfound # DR lost+found file path
# Read Ahead Variables
RA_PAGES # Number of pages to attempt to read ahead
RA_THRESHOLD # Number of pages left before next group
# OnLine equivalent of DBTEMP for SE. This is the list of dbspaces
# that the OnLine SQL Engine will use to create temp tables etc.
# If specified it must be a colon separated list of dbspaces that exist
# when the OnLine system is brought online. If not specified, or if
# all dbspaces specified are invalid, various ad hoc queries will create
# temporary files in /tmp instead.
DBSPACETEMP # Default temp dbspaces
# The following parameters control the type of diagnostics information which
# is preserved when an unanticipated error condition (assertion failure) occurs
# during OnLine operations.
# For DUMPSHMEM, DUMPGCORE and DUMPCORE 1 means Yes, 0 means No.
DUMPDIR /tmp # Preserve diagnostics in this directory
DUMPSHMEM 0 # Dump a copy of shared memory
DUMPGCORE 0 # Dump a core image using 'gcore'
DUMPCORE 0 # Dump a core image (Warning:this aborts OnLine)
DUMPCNT 1 # Number of shared memory or gcore dumps for
# a single user's session
FILLFACTOR 90 # Fill factor for building indexes
# method for OnLine to use when determining current time
USEOSTIME 0 # 0: use internal time(fast), 1: get time from OS(slow)
# Parallel Database Queries (pdq)
MAX_PDQPRIORITY 100 # Maximum allowed pdqpriority
DS_MAX_QUERIES # Maximum number of decision support queries
DS_TOTAL_MEMORY # Decision support memory (Kbytes)
DS_MAX_SCANS 1048576 # Maximum number of decision support scans
DATASKIP off # List of dbspaces to skip
# 0 => Nested loop joins will be preferred (where
# possible) over sortmerge joins and hash joins.
# 1 => If the transaction isolation mode is not
# "repeatable read", optimizer behaves as in (2)
# below. Otherwise it behaves as in (0) above.
# 2 => Use costs regardless of the transaction isolation
# mode. Nested loop joins are not necessarily
# preferred. Optimizer bases its decision purely
# on costs.
OPTCOMPIND 2 # To hint the optimizer
ONDBSPACEDOWN 2 # Dbspace down option: 0 = CONTINUE, 1 = ABORT, 2 = WAIT
LBU_PRESERVE 0 # Preserve last log for log backup
OPCACHEMAX 0 # Maximum optical cache size (Kbytes)
# HETERO_COMMIT (Gateway participation in distributed transactions)
# 1 => Heterogeneous Commit is enabled
# 0 (or any other value) => Heterogeneous Commit is disabled
mib1dbsvr1 ontlitcp mib1 mib1port1
# @(#) profile 26.1 95/09/18
# Copyright (C) 1989-1995 The Santa Cruz Operation, Inc.
# All Rights Reserved.
# The information in this file is provided for the exclusive use of
# the licensees of The Santa Cruz Operation, Inc. Such users have the
# right to use, modify, and incorporate this code into other products
# for purposes authorized by the license agreement provided they include
# this notice and the associated copyright notice with any such product.
# The information in this file is provided "AS IS" without warranty.
# .profile -- Commands executed by a login Bourne shell
onconfig file, sqlhosts file and .profile file seem to be correct and
has no problem but
Could you check your command prompt which you use the command "oninit -i " try to type
And verify their results wheter they are correct or not.
and Could you see an online.log file wheter it still have error message about you chunks ?