Re: Raw or Buffered device?
Posted in 2003
> IT IS PERFECTLY SAFE to just bring the engine down,
> > remove the symbolic link to /dev/dbroot and replace it with an
identically
> > named symbolic link to /dev/rdbroot!
>
> This how ever I do not agree with. Changing the symbolic link will
> result in error :
>
> Cannot open chunk '/opt/DBA/Informix/Links/730/risdi08/primary/root'.
> errno = 19
> oninit: Fatal error in shared memory initialization
>
Ok, can you confirm what is in your onconfig. I have just tried this on a
test system to be sure:
1) Created a symlink from /informix/stores/chunks/rootdbs to
/dev/ida/c0d0p1.
ln -s /dev/ida/c0d0p1 /informix/stores/chunks/rootdbs
2) Initialized the system.
3) Created stores database.
4) Performed a checkpoint.
5) Shutdown the instance.
6) Removed the link.
7) Created symlink from /informix/stores/chunks/rootdbs to /dev/raw/raw1
ln -sf /dev/raw/raw1 /informix/stores/chunks/rootdbs
8) Started instance.
No problems. I am using a linux system, thus the completely different name
for the raw device. But it is a useful exageration of the point.
Since error code 19 mean "No such device"...I think that the path is wrong
somewhere in your link.
> because the (old) link itself is stored in the instances systam
> tables. So it would not be sufficient to 'simply' change the link.
This is true. But you should not be attempting to change this 'name'.
Informix stores the name of the link, not the file pointed to by the link.
It does not give a rats ass where the link its pointing....until it tries to
open that file.
I have done this many times on many different systems: HPox, AIX, Solaris.
All have worked just fine.
Mark
sending to informix-list