Setting up Rootdbs on a raw disk
Posted in 2000
Topics: Storage & Space Management, Server Administration, Security, Permissions & Auditing, Transactions, Locking & Isolation, Logging & Checkpoints, Networking & sqlhosts Configuration
Hi all,
I got the part about setting up databases on raw files. I understand that using links is the way to go. What I am
having problems with is actually getting it to work. I created a link to a raw disk.
ln /dev/rdsk/c0t2d0p3 /dbdisk/rootdisk (I also tried ln -s).
When I try to initialize the database - oninit -i or through onmonitor I get the error "Error opening file "dbdiisk/rootdisk" I know that I must be missing some obvious step (and probably silly). Any ideas?
Info follows:
Solaris 2.6 x86
Compaq 4500
Informix 7.23UC1
#**************************************************************************
#
# INFORMIX SOFTWARE, INC.
#
# Title: onconfig.std
# Description: INFORMIX-OnLine Configuration Parameters
#
#**************************************************************************
# Root Dbspace Configuration
ROOTNAME rootdbs # Root dbspace name
ROOTPATH /dbdisks/rootdbs # Path for device containing root dbspace
ROOTOFFSET 20 # Offset of root dbspace into device (Kbytes)
ROOTSIZE 960000 # Size of root dbspace (Kbytes)
# Disk Mirroring Configuration Parameters
MIRROR 1 # Mirroring flag (Yes = 1, No = 0)
MIRRORPATH /dbdisks/mirrorroot # Path for device containing mirrored root
MIRROROFFSET 20 # Offset into mirrored device (Kbytes)
# Physical Log Configuration
PHYSDBS rootdbs # Location (dbspace) of physical log
PHYSFILE 15000 # Physical log file size (Kbytes)
# Logical Log Configuration
LOGFILES 20 # Number of logical log files
LOGSIZE 10000 # Logical log size (Kbytes)
# Diagnostics
MSGPATH /usr/informix723/online.log # System message log file path
CONSOLE /usr/informix723/console.log # System console message path
ALARMPROGRAM /usr/informix723/etc/log_full.sh # Alarm program path
# System Archive Tape Device
TAPEDEV /dev/rmt/0 # Tape device path
TAPEBLK 16 # Tape block size (Kbytes)
TAPESIZE 2000000 # 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 525000 # Max amount of data to put on log tape (Kbytes)
# Optical
STAGEBLOB ,1 # INFORMIX-OnLine/Optical staging area
# System Configuration
SERVERNUM 2 # Unique id corresponding to a OnLine instance
DBSERVERNAME ontcp2 # Name of default database server
DBSERVERALIASES onshm2 # List of alternate dbservernames
NETTYPE tlitcp,1,32,CPU # Override sqlhosts nettype parameters
NETTYPE ipcshm,1,8,NET # Override sqlhosts nettype parameters
DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed env.
RESIDENT 1 # 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 1 # 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 50000 # Maximum number of locks
BUFFERS 10000 # Maximum number of shared buffers
NUMAIOVPS 6 # Number of IO vps
PHYSBUFF 128 # Physical log buffer size (Kbytes)
LOGBUFF 32 # Logical log buffer size (Kbytes)LOGSMAX 23 # Maximum number of logical log files
CLEANERS 6 # Number of buffer cleaner processes
SHMBASE 0x50000000 # Shared memory base address
SHMVIRTSIZE 16000 # initial virtual shared memory segment size
SHMADD 8000 # Size of new shared memory segments (Kbytes)
SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
CKPTINTVL 600 # Check point interval (in sec)
LRUS 4 # Number of LRU queues
LRU_MAX_DIRTY 10 # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY 5 # 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
# OFF_RECVRY_THREADS:
# Number of parallel worker threads during fast recovery or an offline restore.
# ON_RECVRY_THREADS:
# 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 /usr/informix/etc/dr.lostfound # DR lost+found file path
# Read Ahead Variables
RA_PAGES 4 # Number of pages to attempt to read ahead
RA_THRESHOLD 2 # Number of pages left before next group
# DBSPACETEMP:
# 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
# DUMP*:
# 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 1 # 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
# ADT*
# The following parameters control the type and level of secure auditing
# present in th
Besides the apparent typo that Octav caught, have you checked the
permissions on the underlying RAW device? It MUST be owner and group
'informix' and perms 660. Remember for symbolic links ls -l shows ownership
and permissions for the LINK not the underlying file or device. Use ls -lL
to see permissions of the file/device pointed to by the link.
Art S. Kagel
Anne Shelp wrote:
>
> Hi all,
>
> I got the part about setting up databases on raw files. I understand that using links is the way to go. What I am
> having problems with is actually getting it to work. I created a link to a raw disk.
>
> ln /dev/rdsk/c0t2d0p3 /dbdisk/rootdisk (I also tried ln -s).
>
> When I try to initialize the database - oninit -i or through onmonitor I get the error "Error opening file "dbdiisk/rootdisk" I know that I must be missing some obvious step (and probably silly). Any ideas?
>
> Info follows:
>
> Solaris 2.6 x86
> Compaq 4500
> Informix 7.23UC1
>
> #**************************************************************************
> #
> # INFORMIX SOFTWARE, INC.
> #
> # Title: onconfig.std
> # Description: INFORMIX-OnLine Configuration Parameters
> #
> #**************************************************************************
>
> # Root Dbspace Configuration
>
> ROOTNAME rootdbs # Root dbspace name
> ROOTPATH /dbdisks/rootdbs> # Path for device containing root dbspace
> ROOTOFFSET 20 # Offset of root dbspace into device (Kbytes)
> ROOTSIZE 960000 # Size of root dbspace (Kbytes)>
> # Disk Mirroring Configuration Parameters
>
> MIRROR 1 # Mirroring flag (Yes = 1, No = 0)
> MIRRORPATH /dbdisks/mirrorroot> # Path for device containing mirrored root
> MIRROROFFSET 20 # Offset into mirrored device (Kbytes)>
> # Physical Log Configuration
>
> PHYSDBS rootdbs # Location (dbspace) of physical log
> PHYSFILE 15000 # Physical log file size (Kbytes)>
> # Logical Log Configuration
>
> LOGFILES 20 # Number of logical log files
> LOGSIZE 10000 # Logical log size (Kbytes)>
> # Diagnostics
>
> MSGPATH /usr/informix723/online.log # System message log file path
> CONSOLE /usr/informix723/console.log # System console message path
> ALARMPROGRAM /usr/informix723/etc/log_full.sh # Alarm program path
>
> # System Archive Tape Device
>
> TAPEDEV /dev/rmt/0 # Tape device path
> TAPEBLK 16 # Tape block size (Kbytes)
> TAPESIZE 2000000 # 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 525000 # Max amount of data to put on log tape (Kbytes)>
> # Optical
>
> STAGEBLOB ,1 # INFORMIX-OnLine/Optical staging area
>
> # System Configuration
>
> SERVERNUM 2 # Unique id corresponding to a OnLine instance
> DBSERVERNAME ontcp2 # Name of default database server
> DBSERVERALIASES onshm2 # List of alternate dbservernames
> NETTYPE tlitcp,1,32,CPU # Override sqlhosts nettype parameters
> NETTYPE ipcshm,1,8,NET # Override sqlhosts nettype parameters
> DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed env.
> RESIDENT 1 # 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 1 # 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 50000 # Maximum number of locks
> BUFFERS 10000 # Maximum number of shared buffers
> NUMAIOVPS 6 # Number of IO vps
> PHYSBUFF 128 # Physical log buffer size (Kbytes)
> LOGBUFF 32 # Logical log buffer size (Kbytes)> LOGSMAX 23 # Maximum number of logical log files
> CLEANERS 6 # Number of buffer cleaner processes
> SHMBASE 0x50000000 # Shared memory base address
> SHMVIRTSIZE 16000 # initial virtual shared memory segment size
> SHMADD 8000 # Size of new shared memory segments (Kbytes)
> SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
> CKPTINTVL 600 # Check point interval (in sec)
> LRUS 4 # Number of LRU queues
> LRU_MAX_DIRTY 10 # LRU percent dirty begin cleaning limit
> LRU_MIN_DIRTY 5 # 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
> # OFF_RECVRY_THREADS:
> # Number of parallel worker threads during fast recovery or an offline restore.
> # ON_RECVRY_THREADS:
> # 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 /usr/informix/etc/dr.lostfound # DR lost+found file path
>
> # Read Ahead Variables
> RA_PAGES 4 # Number of pages to attempt to read ahead
> RA_THRESHOLD 2 # Number of pages left before next group>
> # DBSPACETEMP:
> # 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>
> # DUMP*:
> # The following parameters control the type of diagnostics information which
> #
In article <850qbs$lje$1@news.xmission.com>, Anne Shelp
<shean@mcdss.co.gov> writes
>
>Hi all,
>
>I got the part about setting up databases on raw files. I understand that using
>links is the way to go. What I am
>having problems with is actually getting it to work. I created a link to a raw
>disk.
>
> ln /dev/rdsk/c0t2d0p3 /dbdisk/rootdisk (I also tried ln -s).
>
> When I try to initialize the database - oninit -i or through onmonitor I get
>the error "Error opening file "dbdiisk/rootdisk" I know that I must be missing
>some obvious step (and probably silly). Any ideas?
>
a) use ln -s as it is more readable when you do an ls -l
otherwise it is very hard to check what it is linked to
(At least under SCO you have to do an ncheck -i <inode-number>
and it scans EVERY directory on the file system to find the
links, take ages!!).
b) As others have suggested checking the spelling, also
c) /dev/rdsk/... will be a ln -s type link to a file in /devices
do
chown informix /devices/...
chgrp informix /devices/...
chmod 660 /devices/...,raw
(NOTE: /dev/rdsk/... links to /devices/...xxx[a-h],raw
/dev/dsk links to /devices/...xxx[a-h]
to enable KAIO (faster) you want the ...,raw device)
then you need to fix the permissions on the links
chown -h informix /dev/rdsk/...
chgrp -h informix /dev/rdsk/...
chown -h informix /dbdisk/...
chgrp -h informix /dbdisk/...
the -h option changes the link rather than what the link points to
ls -l /dbdisk
should show
rwxrwxrw informix informix ...
ls -l /dev/rdsk/xxxxx,raw
should show
rwxrwxrwx informix infromix xxx -> /devices/yyy
ls -l /devices/yyy should show
rw-rw---- informix informix ....,raw
Phew! It's late an I'm tired..zzzzz...
>Info follows:
>
>
>Solaris 2.6 x86
>Compaq 4500
>Informix 7.23UC1
>
>#**************************************************************************
>#
># INFORMIX SOFTWARE, INC.
>#
># Title: onconfig.std
># Description: INFORMIX-OnLine Configuration Parameters
>#
>#**************************************************************************
>
># Root Dbspace Configuration
>
>ROOTNAME rootdbs # Root dbspace name
>ROOTPATH /dbdisks/rootdbs> # Path for device containing root dbspace
>ROOTOFFSET 20 # Offset of root dbspace into device (Kbytes)
>ROOTSIZE 960000 # Size of root dbspace (Kbytes)>
># Disk Mirroring Configuration Parameters
>
>MIRROR 1 # Mirroring flag (Yes = 1, No = 0)
>MIRRORPATH /dbdisks/mirrorroot> # Path for device containing mirrored root
>MIRROROFFSET 20 # Offset into mirrored device (Kbytes)>
># Physical Log Configuration
>
>PHYSDBS rootdbs # Location (dbspace) of physical log
>PHYSFILE 15000 # Physical log file size (Kbytes)>
># Logical Log Configuration
>
>LOGFILES 20 # Number of logical log files
>LOGSIZE 10000 # Logical log size (Kbytes)>
># Diagnostics
>
>MSGPATH /usr/informix723/online.log # System message log file path
>CONSOLE /usr/informix723/console.log # System console message path
>ALARMPROGRAM /usr/informix723/etc/log_full.sh # Alarm program path
>
># System Archive Tape Device
>
>TAPEDEV /dev/rmt/0 # Tape device path
>TAPEBLK 16 # Tape block size (Kbytes)
>TAPESIZE 2000000 # 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 525000 # Max amount of data to put on log tape (Kbytes)>
># Optical
>
>STAGEBLOB ,1 # INFORMIX-OnLine/Optical staging area
>
># System Configuration
>
>SERVERNUM 2 # Unique id corresponding to a OnLine instance
>DBSERVERNAME ontcp2 # Name of default database server
>DBSERVERALIASES onshm2 # List of alternate dbservernames
>NETTYPE tlitcp,1,32,CPU # Override sqlhosts nettype parameters
>NETTYPE ipcshm,1,8,NET # Override sqlhosts nettype parameters
>DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed env.
>RESIDENT 1 # 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 1 # 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 50000 # Maximum number of locks
>BUFFERS 10000 # Maximum number of shared buffers
>NUMAIOVPS 6 # Number of IO vps
>PHYSBUFF 128 # Physical log buffer size (Kbytes)
>LOGBUFF 32 # Logical log buffer size (Kbytes)>LOGSMAX 23 # Maximum number of logical log files
>CLEANERS 6 # Number of buffer cleaner processes
>SHMBASE 0x50000000 # Shared memory base address
>SHMVIRTSIZE 16000 # initial virtual shared memory segment size
>SHMADD 8000 # Size of new shared memory segments (Kbytes)
>SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
>CKPTINTVL 600 # Check point interval (in sec)
>LRUS 4 # Number of LRU queues
>LRU_MAX_DIRTY 10 # LRU percent dirty begin cleaning limit
>LRU_MIN_DIRTY 5 # 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
># OFF_RECVRY_THREADS:
># Number of parallel worker threads during fast recovery or an offline restore.
># ON_RECVRY_THREADS:
># 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 swi
Related threads
- onbar -c -F in Windows Informix instance
- Anyone... SQLCODE=-668, ISAM error=-1
- Not using the 100% logical log page size alloacted to informix