Al intentar crear una instancia de bd Oracle, falla con el siguiente error
ORA-27125: unable to create shared memory segment
SVR4 Error: 22: Invalid argument
El server en cuestion es un SPARC T5-2 con 8 gb de RAM, con 3 zonas, en la zona 1 estaran las bd, y en la zona 2 y zona3 la aplicacion.
Lo primero que chequeo es en la zona global, si hay errores en el /var/adm/messages, y veo el mensaje que no hay espacio en el SWAP
Dec 12
11:30:02 net1002 genunix: [ID 470503 kern.warning] WARNING: Sorry, no swap
space to grow stack for pid 29204 (discusge)
root@net1002
# zfs list
NAME
USED AVAIL REFER MOUNTPOINT
rpool
16.0G 10.3G 106K /rpool
rpool/ROOT
6.35G 10.3G 31K legacy
rpool/ROOT/s10s_u11wos_24a
6.35G 10.3G 6.35G /
rpool/dump
1.50G 10.3G 1.50G -
rpool/export
73K 10.3G 36K /export
rpool/export/home
37K 10.3G 37K /export/home
rpool/swap
8.16G 10.6G 7.91G -
root@net1002
# df -h
Filesystem size used avail capacity Mounted on
rpool/ROOT/s10s_u11wos_24a
26G 6.3G 10G
39% /
/devices
0K 0K
0K 0% /devices
ctfs
0K 0K
0K 0% /system/contract
proc
0K 0K 0K
0% /proc
mnttab
0K 0K
0K 0% /etc/mnttab
swap
1.5G 448K 1.5G
1% /etc/svc/volatile
objfs
0K 0K
0K 0% /system/object
sharefs
0K 0K
0K 0% /etc/dfs/sharetab
/platform/sun4v/lib/libc_psr/libc_psr_hwcap3.so.1
17G 6.3G 10G
39% /platform/sun4v/lib/libc_psr.so.1
/platform/sun4v/lib/sparcv9/libc_psr/libc_psr_hwcap3.so.1
17G 6.3G 10G
39% /platform/sun4v/lib/sparcv9/libc_psr.so.1
fd
0K 0K
0K 0% /dev/fd
swap
1.5G 32K 1.5G
1% /tmp
swap
1.5G 88K 1.5G
1% /var/run
rpool/export
26G
36K 10G 1% /export
rpool/export/home
26G 37K 10G
1% /export/home
rpool
26G 106K 10G
1% /rpool
/dev/md/dsk/d300
30G 27G 2.7G 91%
/export/zona3
/dev/md/dsk/d200
30G 25G 4.3G
86% /export/zona2
/dev/md/dsk/d100
30G 5.3G 24G
19% /export/zona1
Ahora voy a consultar cuanto espacio libre tiene el pool RPOOL , para saber cuanto espacio puedo agregarle al volumen SWAP ( tiene 11gb libres)
root@net1002
# zpool get all rpool
NAME
PROPERTY
VALUE
SOURCE
rpool
size 26.8G
-
rpool
capacity
58%
-
rpool
altroot
-
default
rpool
health
ONLINE
-
rpool
guid
17834260759408459067 -
rpool
version
32
default
rpool
bootfs
rpool/ROOT/s10s_u11wos_24a local
rpool
delegation
on
default
rpool
autoreplace
off
default
rpool
cachefile -
default
rpool
failmode
continue
local
rpool
listsnapshots
on
default
rpool
autoexpand
off
default
rpool
free
11.0G
-
rpool
allocated
15.8G
-
rpool
readonly off
Con este comando veo que tiene asignado 7.91gb para el volumen swap
root@net1002
# zfs get all rpool/swap
NAME
PROPERTY
VALUE
SOURCE
rpool/swap
type
volume
-
rpool/swap
creation
Thu Sep 8 13:47 2016 -
rpool/swap
used
8.16G
-
rpool/swap
available
10.6G
-
rpool/swap
referenced
7.91G
-
rpool/swap
compressratio
1.00x
-
rpool/swap
reservation
none
default
rpool/swap
volsize
7.91G
local
rpool/swap
volblocksize
1M
-
rpool/swap
checksum
off
local
rpool/swap
compression
off
local
rpool/swap
readonly
off
default
rpool/swap
shareiscsi
off
default
rpool/swap
copies
1
default
rpool/swap
refreservation
8.16G
local
rpool/swap
primarycache
metadata
local
rpool/swap
secondarycache
all
default
rpool/swap
usedbysnapshots 0
-
rpool/swap
usedbydataset
7.91G
-
rpool/swap
usedbychildren
0
-
rpool/swap
usedbyrefreservation
255M
-
rpool/swap
logbias
latency
default
rpool/swap
sync
standard
default
rpool/swap
rekeydate
Ahora voy a agrandar el tamaño del volumen swap de 8gb que tenia a 16gb
root@net1002
# zfs set volsize=16g rpool/swap
root@net1002
# zfs get all rpool/swap
NAME
PROPERTY
VALUE
SOURCE
rpool/swap
type
volume
-
rpool/swap
creation
Thu Sep 8 13:47 2016 -
rpool/swap
used
16.5G
-
rpool/swap
available
2.48G
-
rpool/swap
referenced 16.0G
-
rpool/swap
compressratio
1.00x
-
rpool/swap
reservation
none
default
rpool/swap
volsize
16G
local
rpool/swap
volblocksize
1M -
rpool/swap
checksum
off
local
rpool/swap
compression
off
local
rpool/swap
readonly
off
default
rpool/swap
shareiscsi
off default
rpool/swap
copies
1
default
rpool/swap
refreservation
16.5G
local
rpool/swap
primarycache
metadata
local
rpool/swap
secondarycache
all default
rpool/swap
usedbysnapshots
0
-
rpool/swap
usedbydataset
16.0G
-
rpool/swap
usedbychildren
0
-
rpool/swap
usedbyrefreservation
516M
-
rpool/swap
logbias
latency
default
rpool/swap
sync
standard
default
rpool/swap rekeydate
en la zona1 aumento el parametro del shared memory tambien a 16gb.( esto es opcional, si no lo seteo , y dejo en 8gb que era el tamaño que estaba anteriormente, funciona igual )
root@net1c12 # projmod -s -K "project.max-shm-memory=(priv,17179869184,deny)" user.oracle