Bienvenidos

Todos estos pasos descriptos fueron probados en ambientes productivos

lunes, 12 de diciembre de 2016

ORA-27125: unable to create shared memory segment



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)

 Como el SO tiene ZFS, chequeo con zfs list el espacio asignado al swap , y luego con un df el espacio actual ocupado de swap
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 


Con esto ya funciona, pero por las dudas que el dba quiera agregar otra instancia mas, 
 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

8 comentarios:

  1. Este comentario ha sido eliminado por un administrador del blog.

    ResponderEliminar
  2. .This content creates a new hope and inspiration with in me. Thanks for sharing article like this. The way you have stated everything above is quite awesome. Keep blogging like this. Keep on update....

    SEO Company in Chennai

    ResponderEliminar
  3. Thanks Hammed. Regards from Argentina

    ResponderEliminar
  4. Superb i really enjoyed very much with this article here. Really its a amazing article i had ever read. I hope it will help a lot for all. Thank you so much for this amazing posts and please keep update like this excellent article.

    Digital Marketing Company in Chennai

    ResponderEliminar
  5. Thank you for taking the time to provide us with your valuable information. We strive to provide our candidates with excellent care.As always, we appreciate you confidence and trust in us.

    House Cleaning Services Mumbai

    ResponderEliminar
  6. Hope it may be useful at any costs.And please keep post like this. Really useful information. Thank you very much.

    Group Medical Insurance Dubai

    Cheapest Health Insurance Dubai

    Insurance Companies in Dubai

    ResponderEliminar