Moving IDS to a new host
Posted in 2012
A sysadmin moving an IDS 11.70FC4 instance to another HP-UX Itanium box (same arch/version) couldn't start the new instance: oninit failed with "shmat: shared memory base address illegal" and "mt_shm_init: can't create resident segment". Suggestions included checking the machine notes for SHMBASE (must be 0 on HP-UX), lowering RESIDENT, BUFFERS and SHMVIRTSIZE, confirming enough swap, rebooting to clear memory fragmentation, and using onstat -g osi to inspect kernel settings. The fix: the kernel's shmmax was too small — raising it with kctune let the instance start.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: Installation, Setup & Upgrades, Storage & Space Management, Server Administration, Networking & sqlhosts Configuration, Platform-Specific Issues
Greetings to all,
My first post and you should know, I'm a SA, not a DBA. I've been using IDS
for a couple years, but have never installed an instance from scratch.
I've searched for how to move IDS to a new host and can't seem to find
anything. Does anyone have a link to a documented procedure as to how to
accomplish this? I"m on HP-UX running 11.70FC4
As of now I've done the following;
- created all the raw disk spaces
- installed IDS
- copied the configs and sqlhost files
- updated /etc/services
From what I guess, I need to initialize the instance before I push a restore
down, so I exported INFORMIXDIR, INFORMIXSQLHOSTS, INFORMIXSERVER, and
ONCONFIG and ran:
oninit -ivy
12:17:45 IBM Informix Dynamic Server Started.
12:17:45 shmat: [EINVAL][22]: shared memory base address illegal
12:17:46 Contiguous shared memory segment allocation failed at
0xc000000080000000.
Allocation successful at 0xffffffffffffffff.
Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std.
If you are using the correct SHMBASE value in your ONCONFIG file, then
consider this message informational only.
12:17:46 mt_shm_init: can't create resident segment
oninit -v
12:23:19 IBM Informix Dynamic Server Started.
12:23:19 shmat: [EINVAL][22]: shared memory base address illegal
12:23:19 Contiguous shared memory segment allocation failed at
0xc000000080000000.
Allocation successful at 0xffffffffffffffff.
Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std.
If you are using the correct SHMBASE value in your ONCONFIG file, then
consider this message informational only.
12:23:19 mt_shm_init: can't create resident segment
bash-4.2# onstat -shared memory not initialized for INFORMIXSERVER 'blah' (name is correct)
bash-4.2# swapinfo -tam
Mb Mb Mb PCT START/ Mb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 4096 0 4096 0% 0 - 1 /dev/vg00/lvol2
reserve - 344 -344
memory 3876 869 3007 22%
total 7972 1213 6759 15% - 0 -
Hello.
There are some basic questions:
1) what are you exactly migrating? Architecture, Informix versions, or both?
2) Check your machine notes file, included in your installation media (usually
$INFORMIXDIR/release/en_us/0333/ids_machine_notes_11.70.txt file).
Maybe some of your settings (eg: SHMBASE) are different from your arch
recommendations.
3) You shold then check the official Migration Guide, available here:
http://publib.boulder.ibm.com/infocenter/idshelp/v117/topic/com.ibm.mignode.doc/
mignode.htm
4) and maybe this one, also:
http://www-01.ibm.com/support/docview.wss?uid=swg21259394
There are several kinds of migrations, the only concerning about
backup/restore migrations, is that they should be done in exactly the same
arch and Informix versions. Those documents are self explained, but in case
you have additional needs, just write us again.
Hope it helps.
Best regards.
Alexandre Marini
IBM Informix Certified Professional v10 / v11.50 / v11.70
IBM Information Management Informix Technical Professional
IBM Infosphere DataStage Technical Professional
Database Administrator
> To: ids@iiug.org
> From: mballon@fender.com
> Subject: Moving IDS to a new host [27208]
> Date: Wed, 23 May 2012 12:48:55 -0400
>
> Greetings to all,
>
> My first post and you should know, I'm a SA, not a DBA. I've been using IDS
> for a couple years, but have never installed an instance from scratch.
>
> I've searched for how to move IDS to a new host and can't seem to find
> anything. Does anyone have a link to a documented procedure as to how to
> accomplish this? I"m on HP-UX running 11.70FC4
>
> As of now I've done the following;
>
> - created all the raw disk spaces
> - installed IDS
> - copied the configs and sqlhost files
> - updated /etc/services
>
> >From what I guess, I need to initialize the instance before I push a restore
> down, so I exported INFORMIXDIR, INFORMIXSQLHOSTS, INFORMIXSERVER, and
> ONCONFIG and ran:
>
> oninit -ivy>
> 12:17:45 IBM Informix Dynamic Server Started.
> 12:17:45 shmat: [EINVAL][22]: shared memory base address illegal
> 12:17:46 Contiguous shared memory segment allocation failed at
> 0xc000000080000000.
> Allocation successful at 0xffffffffffffffff.
> Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std.
> If you are using the correct SHMBASE value in your ONCONFIG file, then
> consider this message informational only.
> 12:17:46 mt_shm_init: can't create resident segment
>
> oninit -v>
> 12:23:19 IBM Informix Dynamic Server Started.
> 12:23:19 shmat: [EINVAL][22]: shared memory base address illegal
> 12:23:19 Contiguous shared memory segment allocation failed at
> 0xc000000080000000.
> Allocation successful at 0xffffffffffffffff.
> Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std.
> If you are using the correct SHMBASE value in your ONCONFIG file, then
> consider this message informational only.
> 12:23:19 mt_shm_init: can't create resident segment
>
> bash-4.2# onstat -> shared memory not initialized for INFORMIXSERVER 'blah' (name is correct)
>
> bash-4.2# swapinfo -tam
>
> Mb Mb Mb PCT START/ Mb
> TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
> dev 4096 0 4096 0% 0 - 1 /dev/vg00/lvol2
> reserve - 344 -344
> memory 3876 869 3007 22%
> total 7972 1213 6759 15% - 0 -
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
Same arch, same version, just a different physical host. I will look into your suggestions, many thanks.
You didn't have to initialize an instance in order to perform the restore,
but it did point up the shared memory problem. I'm guessing you are moving
from an HPUX on PA-RISC platform to HPUX on Itanium platform and copied in
hte existing ONCONFIG file from the old machine. Correct?
You may have to modify the ONCONFIG file, primary to change the shared
memory base address. I'm assuming that you installed the correct Informix
version for the new machine, so in the $INFORMIXDIR/release directory
(under a bunch of language specific subdirs) you will find the release
notes. In the file ids_machine_notes_11.70.txt you will find the
recommended base address for the new platform.
Art
Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
Blog: http://informix-myview.blogspot.com/
Disclaimer: Please keep in mind that my own opinions are my own opinions
and do not reflect on my employer, Advanced DataTools, the IIUG, nor any
other organization with which I am associated either explicitly,
implicitly, or by inference. Neither do those opinions reflect those of
other individuals affiliated with any entity with which I am affiliated nor
those of the entities themselves.
On Wed, May 23, 2012 at 12:48 PM, MICHAEL BALLON <mballon@fender.com> wrote:
> Greetings to all,
>
> My first post and you should know, I'm a SA, not a DBA. I've been using IDS
> for a couple years, but have never installed an instance from scratch.
>
> I've searched for how to move IDS to a new host and can't seem to find
> anything. Does anyone have a link to a documented procedure as to how to
> accomplish this? I"m on HP-UX running 11.70FC4
>
> As of now I've done the following;
>
> - created all the raw disk spaces
> - installed IDS
> - copied the configs and sqlhost files
> - updated /etc/services
>
> >From what I guess, I need to initialize the instance before I push a
> restore
> down, so I exported INFORMIXDIR, INFORMIXSQLHOSTS, INFORMIXSERVER, and
> ONCONFIG and ran:
>
> oninit -ivy>
> 12:17:45 IBM Informix Dynamic Server Started.
> 12:17:45 shmat: [EINVAL][22]: shared memory base address illegal
> 12:17:46 Contiguous shared memory segment allocation failed at
> 0xc000000080000000.
> Allocation successful at 0xffffffffffffffff.
> Check SHMBASE is consistent with the value in
> $INFORMIXDIR/etc/onconfig.std.
> If you are using the correct SHMBASE value in your ONCONFIG file, then
> consider this message informational only.
> 12:17:46 mt_shm_init: can't create resident segment
>
> oninit -v>
> 12:23:19 IBM Informix Dynamic Server Started.
> 12:23:19 shmat: [EINVAL][22]: shared memory base address illegal
> 12:23:19 Contiguous shared memory segment allocation failed at
> 0xc000000080000000.
> Allocation successful at 0xffffffffffffffff.
> Check SHMBASE is consistent with the value in
> $INFORMIXDIR/etc/onconfig.std.
> If you are using the correct SHMBASE value in your ONCONFIG file, then
> consider this message informational only.
> 12:23:19 mt_shm_init: can't create resident segment
>
> bash-4.2# onstat -> shared memory not initialized for INFORMIXSERVER 'blah' (name is correct)
>
> bash-4.2# swapinfo -tam
>
> Mb Mb Mb PCT START/ Mb
> TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
> dev 4096 0 4096 0% 0 - 1 /dev/vg00/lvol2
> reserve - 344 -344
> memory 3876 869 3007 22%
> total 7972 1213 6759 15% - 0 -
>
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
--90e6ba6e82b485e36c04c0b7c18f
old host: ia64 hp server rx4640 Release: HP-UX B.11.31 Version: U (unlimited-user license) Machine: ia64 new host: ia64 hp server rx1600 Release: HP-UX B.11.31 Version: U (unlimited-user license) Machine: ia64 release file shows --> SHMBASE 0x0L onconfig file shows --> SHMBASE 0 (which is the same as the old host) when I saw old/new hosts I realize that the 'new' host is actually older than then old host, but it's not a replacement, it's just going to be a TEST host.
Is it possible that the "new" machine does not have enough memory and swap to be able to configure the requested shared memory sizes (total of SHMVIRTSIZE and the sum of all of the BUFFERPOOL entries <num * pagesize>)? Art Art S. Kagel Advanced DataTools (www.advancedatatools.com) Blog: http://informix-myview.blogspot.com/ Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on my employer, Advanced DataTools, the IIUG, nor any other organization with which I am associated either explicitly, implicitly, or by inference. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves. On Wed, May 23, 2012 at 2:08 PM, MICHAEL BALLON <mballon@fender.com> wrote: > old host: > > ia64 hp server rx4640 > Release: HP-UX B.11.31 > Version: U (unlimited-user license) > Machine: ia64 > > new host: > > ia64 hp server rx1600 > Release: HP-UX B.11.31 > Version: U (unlimited-user license) > Machine: ia64 > > release file shows --> SHMBASE 0x0L > onconfig file shows --> SHMBASE 0 (which is the same as the old host) > > when I saw old/new hosts I realize that the 'new' host is actually older > than > then old host, but it's not a replacement, it's just going to be a TEST > host. > > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > --14dae934099fcddc2104c0b826e9
Ok, then..... guess you already did, but... had you copy your environment variables between them?Alexandre Marini IBM Informix Certified Professional v10 / v11.50 / v11.70 IBM Information Management Informix Technical Professional IBM Infosphere DataStage Technical Professional Database Administrator > To: ids@iiug.org > From: mballon@fender.com > Subject: Re: Moving IDS to a new host [27214] > Date: Wed, 23 May 2012 14:08:34 -0400 > > old host: > > ia64 hp server rx4640 > Release: HP-UX B.11.31 > Version: U (unlimited-user license) > Machine: ia64 > > new host: > > ia64 hp server rx1600 > Release: HP-UX B.11.31 > Version: U (unlimited-user license) > Machine: ia64 > > release file shows --> SHMBASE 0x0L > onconfig file shows --> SHMBASE 0 (which is the same as the old host) > > when I saw old/new hosts I realize that the 'new' host is actually older than > then old host, but it's not a replacement, it's just going to be a TEST host. > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. >
I tried lowering the values, still no good. I'm it's probably something basic,
although never doing this before I'm stumped. Just trying to get a 'empty'
instance running to do a restore. Here's some info in case it helps. Thanks
for all the suggestions so far...
13:03:13 IBM Informix Dynamic Server Started.
13:03:13 shmat: [EINVAL][22]: shared memory base address illegal
13:03:13 Contiguous shared memory segment allocation failed at
0xc000000080000000.
Allocation successful at 0xffffffffffffffff.
Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std.
If you are using the correct SHMBASE value in your ONCONFIG file, then
consider this message informational only.
13:03:14 mt_shm_init: can't create resident segment
Mb Mb Mb PCT START/ Mb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 4096 0 4096 0% 0 - 1 /dev/vg00/lvol2
reserve - 508 -508
memory 3876 1132 2744 29%
total 7972 1640 6332 21% - 0 -
grep SHM /informix/11.70.fc4/etc/onconfig.test | grep -v '^#'
SHMBASE 0x0L
SHMVIRTSIZE 655360
SHMADD 24576
EXTSHMADD 8192
SHMTOTAL 0
SHMVIRT_ALLOCSEG .90,4
SHMNOACCESS
DD_HASHMAX 10
DUMPSHMEM 1
If you have RESIDENT set to a non-zero value in the ONCONFIG file, try
setting it to zero.
Art
Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
Blog: http://informix-myview.blogspot.com/
Disclaimer: Please keep in mind that my own opinions are my own opinions
and do not reflect on my employer, Advanced DataTools, the IIUG, nor any
other organization with which I am associated either explicitly,
implicitly, or by inference. Neither do those opinions reflect those of
other individuals affiliated with any entity with which I am affiliated nor
those of the entities themselves.
On Tue, May 29, 2012 at 1:13 PM, MICHAEL BALLON <mballon@fender.com> wrote:
> I tried lowering the values, still no good. I'm it's probably something
> basic,
> although never doing this before I'm stumped. Just trying to get a 'empty'
> instance running to do a restore. Here's some info in case it helps. Thanks
> for all the suggestions so far...
>
> 13:03:13 IBM Informix Dynamic Server Started.
> 13:03:13 shmat: [EINVAL][22]: shared memory base address illegal
> 13:03:13 Contiguous shared memory segment allocation failed at
> 0xc000000080000000.
> Allocation successful at 0xffffffffffffffff.
> Check SHMBASE is consistent with the value in
> $INFORMIXDIR/etc/onconfig.std.
> If you are using the correct SHMBASE value in your ONCONFIG file, then
> consider this message informational only.
> 13:03:14 mt_shm_init: can't create resident segment
>
> Mb Mb Mb PCT START/ Mb
> TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
> dev 4096 0 4096 0% 0 - 1 /dev/vg00/lvol2
> reserve - 508 -508
> memory 3876 1132 2744 29%
> total 7972 1640 6332 21% - 0 -
>
> grep SHM /informix/11.70.fc4/etc/onconfig.test | grep -v '^#'
> SHMBASE 0x0L
> SHMVIRTSIZE 655360
> SHMADD 24576
> EXTSHMADD 8192
> SHMTOTAL 0
> SHMVIRT_ALLOCSEG .90,4
> SHMNOACCESS
> DD_HASHMAX 10
> DUMPSHMEM 1>
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
--14dae93406bb2b204104c1300515
it was 3, change to 0, same error: 13:21:02 IBM Informix Dynamic Server Started. 13:21:02 shmat: [EINVAL][22]: shared memory base address illegal 13:21:02 Contiguous shared memory segment allocation failed at 0xc000000080000000. Allocation successful at 0xffffffffffffffff. Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std. If you are using the correct SHMBASE value in your ONCONFIG file, then consider this message informational only. 13:21:02 mt_shm_init: can't create resident segment I'll try a reboot in few, can't do it right now.
On 29.5.2012 19:51, MICHAEL BALLON wrote: > it was 3, change to 0, same error: > > 13:21:02 IBM Informix Dynamic Server Started. > 13:21:02 shmat: [EINVAL][22]: shared memory base address illegal > 13:21:02 Contiguous shared memory segment allocation failed at > 0xc000000080000000. > Allocation successful at 0xffffffffffffffff. > Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/onconfig.std. > If you are using the correct SHMBASE value in your ONCONFIG file, then > consider this message informational only. > 13:21:02 mt_shm_init: can't create resident segment > > I'll try a reboot in few, can't do it right now. > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > Michael, Check shmmax and other OS parameters for shared memory and semaphores. Petr
A new feature in version 11 and very handy is the "onstat -g osi" optio=
n
(located in $INFORMIXDIR/bin). This option to onstat will work when t=
he
system is offline and online and will print out the Operating System
Information (i.e. osi). I would be very interested in the shmmax value=
you
have set in your kernel Ensure this is large enough to hold your enti=
re
shared memory segment.
Also ensure you have enough swap to contain your shared memory.
On HP SHMBASE must be 0 as the HP operating system will decide where to=
place memory.
One of the last issues is very complex os issue and deals with the mem=
ory
space in HP becoming fragmented. One way to clear the fragmentation is=
reboot the box and then start informix. This is often a requirement on=
32
bit OS if you have not chattr the executables (an HPism).
to make things easier you might consider for testing lowering the follo=
wing
values in your config file
1. RESIDENT set to 0
2. BUFFER lower to 5000
3 SHMVIRTSIZE 12000
This will reduce the memory requirements.
John F. Miller III
STSM, Embedability Architect
miller3@us.ibm.com
503-578-5645
IBM Informix Dynamic Server (IDS)
ids-bounces@iiug.org wrote on 05/29/2012 01:32:21 PM:
> From: "Petr Pomykacek" <Petr.Pomykacek@pomyk.cz>
> To: ids@iiug.org,
> Date: 05/29/2012 01:34 PM
> Subject: Re: Moving IDS to a new host [27255]
> Sent by: ids-bounces@iiug.org
>
> On 29.5.2012 19:51, MICHAEL BALLON wrote:
> > it was 3, change to 0, same error:
> >
> > 13:21:02 IBM Informix Dynamic Server Started.
> > 13:21:02 shmat: [EINVAL][22]: shared memory base address illegal
> > 13:21:02 Contiguous shared memory segment allocation failed at
> > 0xc000000080000000.
> > Allocation successful at 0xffffffffffffffff.
> > Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/
> onconfig.std.
> > If you are using the correct SHMBASE value in your ONCONFIG file, t=
hen
> > consider this message informational only.
> > 13:21:02 mt_shm_init: can't create resident segment
> >
> > I'll try a reboot in few, can't do it right now.
> >
> >
> >
>
***********************************************************************=
********
> > Forum Note: Use "Reply" to post a response in the discussion forum.=
> >
> Michael,
> Check shmmax and other OS parameters for shared memory and semaphores=
.
>
> Petr
>
>
>
***********************************************************************=
********
> Forum Note: Use "Reply" to post a response in the discussion forum.=
>=
Success! kctune shmmax was the key... thank you!
11.10.UC1 doesn't seem to have this option - must be new in 11.50
--Justin Killen
-----Original Message-----
From: ids-bounces@iiug.org [mailto:ids-bounces@iiug.org] On Behalf Of John
Miller iii
Sent: Tuesday, May 29, 2012 4:57 PM
To: ids@iiug.org
Subject: Re: Moving IDS to a new host [27256]
A new feature in version 11 and very handy is the "onstat -g osi" optio=
n
(located in $INFORMIXDIR/bin). This option to onstat will work when t=
he
system is offline and online and will print out the Operating System
Information (i.e. osi). I would be very interested in the shmmax value=
you
have set in your kernel Ensure this is large enough to hold your enti=
re
shared memory segment.
Also ensure you have enough swap to contain your shared memory.
On HP SHMBASE must be 0 as the HP operating system will decide where to=
place memory.
One of the last issues is very complex os issue and deals with the mem=
ory
space in HP becoming fragmented. One way to clear the fragmentation is=
reboot the box and then start informix. This is often a requirement on=
32
bit OS if you have not chattr the executables (an HPism).
to make things easier you might consider for testing lowering the follo=
wing
values in your config file
1. RESIDENT set to 0
2. BUFFER lower to 5000
3 SHMVIRTSIZE 12000
This will reduce the memory requirements.
John F. Miller III
STSM, Embedability Architect
miller3@us.ibm.com
503-578-5645
IBM Informix Dynamic Server (IDS)
ids-bounces@iiug.org wrote on 05/29/2012 01:32:21 PM:
> From: "Petr Pomykacek" <Petr.Pomykacek@pomyk.cz>
> To: ids@iiug.org,
> Date: 05/29/2012 01:34 PM
> Subject: Re: Moving IDS to a new host [27255]
> Sent by: ids-bounces@iiug.org
>
> On 29.5.2012 19:51, MICHAEL BALLON wrote:
> > it was 3, change to 0, same error:
> >
> > 13:21:02 IBM Informix Dynamic Server Started.
> > 13:21:02 shmat: [EINVAL][22]: shared memory base address illegal
> > 13:21:02 Contiguous shared memory segment allocation failed at
> > 0xc000000080000000.
> > Allocation successful at 0xffffffffffffffff.
> > Check SHMBASE is consistent with the value in $INFORMIXDIR/etc/
> onconfig.std.
> > If you are using the correct SHMBASE value in your ONCONFIG file, t=
hen
> > consider this message informational only.
> > 13:21:02 mt_shm_init: can't create resident segment
> >
> > I'll try a reboot in few, can't do it right now.
> >
> >
> >
>
***********************************************************************=
********
> > Forum Note: Use "Reply" to post a response in the discussion forum.=
> >
> Michael,
> Check shmmax and other OS parameters for shared memory and semaphores=
..
>
> Petr
>
>
>
***********************************************************************=
********
> Forum Note: Use "Reply" to post a response in the discussion forum.=
>=
*******************************************************************************
Forum Note: Use "Reply" to post a response in the discussion forum.
On Wed, May 30, 2012 at 4:27 PM, Justin Killen < jkillen@allamericanasphalt.com> wrote: > 11.10.UC1 doesn't seem to have this option - must be new in 11.50 > Just a general gentle reminder... IDS 11.10 is already at EoM (End of Marketing); it goes to EoS (End of Support) at the end of September. If you are still using IDS 11.10, you should be planning your upgrade. -- Jonathan Leffler <jonathan.leffler@gmail.com> #include <disclaimer.h> Guardian of DBD::Informix - v2011.0612 - http://dbi.perl.org "Blessed are we who can laugh at ourselves, for we shall never cease to be amused." --f46d0408da07cb629c04c14c7912