jueves, 12 de diciembre de 2013

Al correr runInstaller de Oracle, el error libXext.so.6: cannot open shared object file: No such file or directory en RHEL 6

El otro dia Instalando un nuevo ambiente de pruebas, me salio el siguiente error cuando corri runInstaller, libXext.so.6: cannot open shared object file: No such file or directory en RHEL 6, asi que en luger de poder continuar con mi instalacion de ambiente de prueba, me puse a buscar por que me habia salido este error.

[oracle@oracleenespanol database]$ ./runInstaller 
Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB.   Actual 41652 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 3967 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2013-12-11_10-58-10PM. Please wait ...[oracle@oracleenespanol database]$ Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/OraInstall2013-12-11_10-58-10PM/jdk/jre/lib/i386/xawt/libmawt.so: libXext.so.6: cannot open shared object file: No such file or directory
 at java.lang.ClassLoader$NativeLibrary.load(Native Method)
 at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1753)
 at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1649)
 at java.lang.Runtime.load0(Runtime.java:769)
 at java.lang.System.load(System.java:968)
 at java.lang.ClassLoader$NativeLibrary.load(Native Method)
 at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1753)
 at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1670)
 at java.lang.Runtime.loadLibrary0(Runtime.java:822)
 at java.lang.System.loadLibrary(System.java:993)
 at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.awt.Toolkit.loadLibraries(Toolkit.java:1509)
 at java.awt.Toolkit.<clinit>(Toolkit.java:1530)
 at com.jgoodies.looks.LookUtils.isLowResolution(LookUtils.java:484)
 at com.jgoodies.looks.LookUtils.<clinit>(LookUtils.java:249)
 at com.jgoodies.looks.plastic.PlasticLookAndFeel.<clinit>(PlasticLookAndFeel.java:135)
 at java.lang.Class.forName0(Native Method)
 at java.lang.Class.forName(Class.java:242)
 at javax.swing.SwingUtilities.loadSystemClass(SwingUtilities.java:1779)
 at javax.swing.UIManager.setLookAndFeel(UIManager.java:453)
 at oracle.install.commons.util.Application.startup(Application.java:780)
 at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:165)
 at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:182)
 at oracle.install.commons.base.driver.common.Installer.startup(Installer.java:348)
 at oracle.install.ivw.db.driver.DBInstaller.startup(DBInstaller.java:124)
 at oracle.install.ivw.db.driver.DBInstaller.main(DBInstaller.java:155)

Despues de buscar un poco en internet, me di cuenta me faltaban paquetes relacionados con X11, que basicamente son paquetes graficos, el paquete libXp.so.6 en especial era el que me faltaba, asi que me di a la tarea de instalarlos con el usuario root


[root@oracleenespanol ~]# yum provides libXp.so.6
Loaded plugins: refresh-packagekit, security
libXp-1.0.0-15.1.el6.i686 : X.Org X11 libXp runtime library
Repo        : public_ol6_latest
Matched from:
Other       : libXp.so.6



[root@oracleenespanol ~]# yum install libXp.so.6
Loaded plugins: refresh-packagekit, security
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package libXp.i686 0:1.0.0-15.1.el6 will be installed
--> Processing Dependency: libX11.so.6 for package: libXp-1.0.0-15.1.el6.i686
--> Processing Dependency: libXau.so.6 for package: libXp-1.0.0-15.1.el6.i686
--> Processing Dependency: libXext.so.6 for package: libXp-1.0.0-15.1.el6.i686
--> Running transaction check
---> Package libX11.i686 0:1.5.0-4.el6 will be installed
--> Processing Dependency: libxcb.so.1 for package: libX11-1.5.0-4.el6.i686
---> Package libXau.i686 0:1.0.6-4.el6 will be installed
---> Package libXext.i686 0:1.3.1-2.el6 will be installed
--> Running transaction check
---> Package libxcb.i686 0:1.8.1-1.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================================================================================================================
 Package                                 Arch                                 Version                                         Repository                                         Size
======================================================================================================================================================================================
Installing:
 libXp                                   i686                                 1.0.0-15.1.el6                                  public_ol6_latest                                  22 k
Installing for dependencies:
 libX11                                  i686                                 1.5.0-4.el6                                     public_ol6_latest                                 590 k
 libXau                                  i686                                 1.0.6-4.el6                                     public_ol6_latest                                  24 k
 libXext                                 i686                                 1.3.1-2.el6                                     public_ol6_latest                                  33 k
 libxcb                                  i686                                 1.8.1-1.el6                                     public_ol6_latest                                 114 k

Transaction Summary
======================================================================================================================================================================================
Install       5 Package(s)

Total download size: 782 k
Installed size: 1.9 M
Is this ok [y/N]: y
Downloading Packages:
(1/5): libX11-1.5.0-4.el6.i686.rpm                                                                                                                             | 590 kB     00:00     
(2/5): libXau-1.0.6-4.el6.i686.rpm                                                                                                                             |  24 kB     00:00     
(3/5): libXext-1.3.1-2.el6.i686.rpm                                                                                                                            |  33 kB     00:00     
(4/5): libXp-1.0.0-15.1.el6.i686.rpm                                                                                                                           |  22 kB     00:00     
(5/5): libxcb-1.8.1-1.el6.i686.rpm                                                                                                                             | 114 kB     00:00     
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                 342 kB/s | 782 kB     00:02     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : libXau-1.0.6-4.el6.i686                                                                                                                                            1/5 
  Installing : libxcb-1.8.1-1.el6.i686                                                                                                                                            2/5 
  Installing : libX11-1.5.0-4.el6.i686                                                                                                                                            3/5 
  Installing : libXext-1.3.1-2.el6.i686                                                                                                                                           4/5 
  Installing : libXp-1.0.0-15.1.el6.i686                                                                                                                                          5/5 
  Verifying  : libxcb-1.8.1-1.el6.i686                                                                                                                                            1/5 
  Verifying  : libX11-1.5.0-4.el6.i686                                                                                                                                            2/5 
  Verifying  : libXext-1.3.1-2.el6.i686                                                                                                                                           3/5 
  Verifying  : libXau-1.0.6-4.el6.i686                                                                                                                                            4/5 
  Verifying  : libXp-1.0.0-15.1.el6.i686                                                                                                                                          5/5 

Installed:
  libXp.i686 0:1.0.0-15.1.el6                                                                                                                                                         

Dependency Installed:
  libX11.i686 0:1.5.0-4.el6                    libXau.i686 0:1.0.6-4.el6                    libXext.i686 0:1.3.1-2.el6                    libxcb.i686 0:1.8.1-1.el6                   

Complete!

Una vez que instale estos paquetes , todo quedo resuelto, continue instalando mis nuevos ambientes de prueba :)




domingo, 3 de noviembre de 2013

EM 12c : El Error ORA-00020 en la BD del Repositorio OMS

El viernes pasado me llego una alerta que en la Base de Datos repositorio de uno de los EM 12c que le doy soporte , esta alerta es ORA-00020, básicamente lo que quiere decir es que el numero máximo de procesos que puedes tener en tu base de datos llego a su limite. Y de haber sabido la solución, me ahorro un dolor de cabeza :)

Lo primero que trate de hacer es conectarme a la BD , pero esto no me fue posible por el mismo error

oracle $ sqlplus

SQL*Plus: Release 11.2.0.3.0 Production on Sat Nov 2 04:55:20 2013

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Enter user-name: /as sysdba
ERROR:
ORA-00020: maximum number of processes (500) exceeded

Trate de conectarme con la opción -prelim, pero no me permitio ver que estaba corriendo

oracle $ sqlplus -prelim / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Sat Nov 2 04:57:38 2013

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

SQL> select count(*) from v$process;
select count(*) from v$process
*
ERROR at line 1:
ORA-01012: not logged on
Process ID: 0
Session ID: 0 Serial number: 0

Entonces, sabiendo que era la BD del repositorio, mate un proceso de cliente y entre a la Base de Datos para ver que estaba corriendo

oracle $ kill -9 31438

oracle $ sqlplus

SQL*Plus: Release 11.2.0.3.0 Production on Sat Nov 2 04:58:28 2013

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Enter user-name: /as sysdba

SQL> select count(1),USERNAME from gv$session group by USERNAME;

  COUNT(1) USERNAME
---------- ------------------------------
       486
  3 SYSMAN_MDS
  2 DBSNMP
  1 SYSMAN_APM
  2 SYSMAN_OPSS
  1 SYS

set lines 250
col inst_id for 99
col program for a60
col username for a15
col event for a35
col module for a30
col action for a30
col state for a10
select inst_id,sid,sql_id,module,action,username,status,state,event,p1,p2 from gv$session
where status='ACTIVE' and
event not in ('smon timer','pmon timer','rdbms ipc message','Null event',
                   'parallel query dequeue','pipe get','client message',
                   'SQL*Net message to client','SQL*Net message from client',
                   'SQL*Net more data from client','dispatcher timer',
                   'virtual circuit status','lock manager wait for remote message',
                   'PX Idle Wait','PX Deq: Execute Reply','PX Deq: Execution Msg',
                   'PX Deq: Table Q Normal','PX Deq Credit: send blkd','PX Deq: Execute Reply',
                   'PX Deq Credit: need buffer','PX Deq: Signal ACK','PX Deque wait',
                   'wakeup time manager','slave wait','i/o slave wait','jobq slave wait',
                   'null event','gcs remote message','gcs for action','ges remote message',
                   'queue messages','Streams AQ: waiting for messages in the queue',
                   'DIAG idle wait','VKTM Logical Idle Wait','ASM background timer','fbar timer',
                   'Streams AQ: waiting for time management or cleanup tasks',
                   'Streams AQ: qmn coordinator idle wait','Streams AQ: qmn slave idle wait',
                   'class slave wait','Space Manager: slave idle wait','JOX Jit Process Sleep',
                   'EMON slave idle wait','GCR sleep','LNS ASYNC end of log','PING',
                   'Streams AQ: emn coordinator idle wait','wait for unread message on broadcast channel')  

SQL> /

INST_ID        SID SQL_ID  MODULE    ACTION          USERNAME        STATUS STATE    EVENT           P1   P2
------- ---------- ------------- ------------------------------ ------------------------------ --------------- -------- ---------- ----------------------------------- ---------- ----------
      1  21   OMS                ACTIVE WAITING    library cache lock         5644182264 1937119896
      1  22   OMS                ACTIVE WAITING    library cache lock         5644182264 4874496520
      1  24   OMS                ACTIVE WAITING    library cache lock         5644182264 5032733856
      1  25   OMS                ACTIVE WAITING    library cache lock         5644182264 5549524880
      1  26   OMS                ACTIVE WAITING    library cache lock         5644182264 5543937040
      1  27   OMS                ACTIVE WAITING    library cache lock         5644182264 5362001912

Y lo que me di cuenta es que las 496 sesiones estaban esperando con library cache lock, así que la logica me llevo a que habia un objeto invalido, pero no fue el caso, entonces lo siguiente que hice fue tratar de averiguar que objeto era el causante de esto

SQL> SELECT sid, event, p1raw, seconds_in_wait, wait_time
FROM sys.v_$session_wait
WHERE event like 'library cache%'
AND state = 'WAITING'  2    3    4  ;

       SID EVENT
---------- ----------------------------------------------------------------
P1RAW   SECONDS_IN_WAIT  WAIT_TIME
---------------- --------------- ----------
 21 library cache lock
00000001506B62F8       48   0

 22 library cache lock
00000001506B62F8     1274   0

 24 library cache lock
00000001506B62F8      348   0

...

SQL>  tti "Object that is Blocking"
 COL owner format a8
 COL object format a70
 SELECT kglnaown AS owner, kglnaobj as Object
    FROM sys.x$kglob
   WHERE kglhdadr like '&P1RAW'
  /SQL> SQL> SQL>   2    3    4  
Enter value for p1raw: 00000001506B62F8
old   3:    WHERE kglhdadr like '&P1RAW'
new   3:    WHERE kglhdadr like '00000001506B62F8'

Sat Nov 02              page    1
       Object that is Blocking

OWNER  OBJECT
-------- ----------------------------------------------------------------------
  84

Como puedes ver el dueño y el objeto estaban raros, y confirmando este objeto obvio no existia, entonces lo que hice, fue tratar de subir y bajar el stack de OMS, y aquí fue donde salio todo el problema

Oracle Enterprise Manager Cloud Control 12c Release 12.1.0.1.0  
Copyright (c) 1996, 2011 Oracle Corporation.  All rights reserved.
Stopping WebTier...
WebTier Successfully Stopped
Stopping Oracle Management Server...
Oracle Management Server Successfully Stopped
AdminServer Successfully Stopped
Oracle Management Server is Down
Oracle Enterprise Manager 12c Cloud Control 12.1.0.1.0  
Copyright (c) 1996, 2012 Oracle Corporation.  All rights reserved.
Stopping agent ..... stopped.

Oracle Enterprise Manager Cloud Control 12c Release 12.1.0.1.0  
Copyright (c) 1996, 2011 Oracle Corporation.  All rights reserved.
Starting WebTier...
WebTier Successfully Started
Starting Oracle Management Server...
Oracle Management Server Could Not Be Started
Oracle Management Server is not functioning because of the following reason:
Unexpected error occurred. Check error and log files.
Please check
EM_Instance_HOME/em/EMGC_OMS1/sysman/log/emctl.log for error details

Así que lo que hice es fue ir a los logs, y lo que vi fue que el password de sysman habia sido cambiado

<Nov 2, 2013 6:29:09 AM EST> <Notice> <Security> <BEA-090898> <Ignoring the trusted CA certificate "CN=KEYNECTIS ROOT CA,OU=ROOT,O=KEYNECTIS,C=FR". The loading of the trusted certificate list raised a certificate parsing exception PKIX: Unsupported OID in the AlgorithmIdentifier object: 1.2.840.113549.1.1.11.>

<Nov 2, 2013 6:29:09 AM EST> <Notice> <Security> <BEA-090898> <Ignoring the trusted CA certificate "CN=GeoTrust Primary Certification Authority - G3,OU=(c) 2008 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US". The loading of the trusted certificate list raised a certificate parsing exception PKIX: Unsupported OID in the AlgorithmIdentifier object: 1.2.840.113549.1.1.11.>

Invalid Connection Pool. ERROR = ORA-01017: invalid username/password; logon denied

Una vez que cambie el password en el repositorio correctamente, pude arrancar OMS sin ningun problema


emctl config oms -change_repos_pwd -change_in_db -use_sys_pwd -sys_pwd sys_pass -new_pwd sysman_pass

Oracle Enterprise Manager Cloud Control 12c Release 12.1.0.1.0  
Copyright (c) 1996, 2011 Oracle Corporation.  All rights reserved.
Starting WebTier...
WebTier Successfully Started
Starting Oracle Management Server...
Oracle Management Server Successfully Started
Oracle Management Server is Up
Oracle Enterprise Manager 12c Cloud Control 12.1.0.1.0  
Copyright (c) 1996, 2012 Oracle Corporation.  All rights reserved.

Lo que hay que entender de esto es que cambiar el password de SYSMAN en en el repositorio es un proceso, no es nada mas en la base de datos, y espero que esto te ahorre los dolores de cabeza que me dio este pequeño problema.



lunes, 28 de octubre de 2013

ODA : Como reconfigurar la contraseña de root de ILOM

El otro día tuvimos un nuevo cliente, en donde nos solicitaron hacer un bare metal restore del ODA (Oracle Device Appliance) que tenia, pero para poder hacer esto, necesitamos acceder al ILOM (Integrated Lights Out Manager) y el problema es que nuestro cliente no tenia ni idea de cual era el password de root del ILOM.

Para poder cambiar esta contraseña, lo único que teníamos que hacer es lo siguiente :

Lo importante a saber es queremos es configurar el password de root del ILOM, no el password de root de los nodos del ODA, que son dos cosas muy distintas.

Así que lo primero, fue asegurarnos que el ipmitool esta en nuestro PATH, si no lo puedes encontrar en /usr/bin

[root@devrac1 ~]# which ipmitool
/usr/bin/ipmitool

Una vez que nos aseguramos que esta en nuestro PATH, verificamos la versión en la que estamos

[root@devrac1 ~]# ipmitool -V
ipmitool version 1.8.10.4

Y ahora si lo único que sigue es cambiar el password de root del ILOM, que en este caso le puse contraseña

[root@devrac1 ~]# ipmitool user set password 0x02 contraseña

Al hacer esto , no vas a ver ningún resultado, pero el password de root del ILOM esta cambiado y ahora si puedes proceder a hacer tu bare metal restore.

Y un ultimo tip, por que otro problema que tuvimos es que no sabíamos en que dirección IP estaba el ILOM, así que lo que hicimos es correr el siguiente comando para poder ver la dirección del ILOM


[root@devrac1 ~]# ipmitool sunoem cli "show /SP/network"
Connected. Use ^D to exit.
-> show /SP/network

 /SP/network
    Targets:
        interconnect
        ipv6
        test

    Properties:
        commitpending = (Cannot show property)
        dhcp_server_ip = none
        ipaddress = 192.168.144.18
        ipdiscovery = static
        ipgateway = 192.168.144.1
        ipnetmask = 255.255.255.0
        macaddress = 00:21:22:F3:2F:7J
        managementport = /SYS/SP/NET0
        outofbandmacaddress = 00:21:22:F3:2F:7J
        pendingipaddress = 192.168.144.18
        pendingipdiscovery = static
        pendingipgateway = 192.168.144.1
        pendingipnetmask = 255.255.255.0
        pendingmanagementport = /SYS/SP/NET0
        sidebandmacaddress = 00:21:22:F3:2F:7J
        state = enabled

    Commands:
        cd
        set
        show

Cualquier duda o pregunta son mas que bienvenidas :)



lunes, 21 de octubre de 2013

El error ORA-27102, use_large_pages y la relacion con SHMALL y SHMMAX en Linux

El otro día me pasaron la configuración de un nuevo servidor, y según esto el SA había hecho todos los pre-requisitos que menciona el manual de instalación de Oracle 11gR2  (11.2.0.3) . Teníamos un poco de prisa y me fié de que lo había hecho correctamente, pero para mi sorpresa cuando trate de subir la base de datos y usando el parámetro use_large_pages='ONLY' me tope con el siguiente error

oracle $ sqlplus

SQL*Plus: Release 11.2.0.3.0 Production on Tue Oct 8 18:07:58 2013

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Enter user-name: /as sysdba
Connected to an idle instance.

SQL> startup nomount pfile='/home/oracle/working/antunez/initBLADB.ora';
ORA-27102: out of memory
Linux-x86_64 Error: 28: No space left on device
SQL> exit
Disconnected

El error en el trace file era el siguiente:

Large Pages segment allocation succeed, size = 201326592, shmid = 425984, target_node = 129, large page used 96
skgm warning: ENOSPC creating segment of size 0x680000000
fix shm parameters in /etc/system or equivalent

Entonces me puse ahora si a checar que estaba pasando, ya que teníamos 31g de memoria en el servidor y la BD ocupaba nada mas 25, era obvio que si este es un nuevo servidor dedicado y nada estaba siendo utilizado, que había una configuración errónea en los parámetros de memoria del kernel.

Originalmente estos eran mis parámetros de kernel

kernel.shmmax = 68719476736
kernel.shmall = 2097152

Para poder explicar lo que hice, tengo que dar la definición de estos dos parámetros y uno mas:

SHMALL .- Establece, en numero de paginas, la cantidad total de páginas de memoria compartidas que se puede utilizar en todo el sistema.

SHMMAX .- Es el tamaño máximo de un segmento único de memoria compartida en bytes. El parámetro SHMMAX es un parámetro protector que establece el límite superior de la cantidad de memoria compartida que un proceso posiblemente puede solicitar. El valor máximo admitido de SHMMAX en un sistema de 32 bits es 4 GB - 1 byte.

SHMALL es la division de  SHMMAX/TAMAÑO_DE_PAGINA

SHMMNI .- El número máximo de segmentos de memoria compartida en un sistema

Viendo la definición de estos dos parámetros, y el error en el trace file están mal definidos, ya que esta tratando de crear un segmento de tamaño 27917287424 (Convertido de Hexadecimal a Decimal), así que me di a la primer tarea de obtener el valor del tamaño de la pagina

oracle $ getconf PAGE_SIZE
4096

Ahora si que tenia el numero de pagina y el tamaño de segmento que la base de datos estaba tratando de crear, lo único que tenia que hacer es dividir  25568477184/4096 y estos son los nuevos valores que necesitaba poner en mi configuración del kernel

kernel.shmall = 6815744
kernel.shmmax = 27917287424

Una vez que cambie los parámetros como root en /etc/sysctl.conf , aplique los cambios con sysctl -p y listo

root $ vi /etc/sysctl.conf
root $ sysctl -p
...
kernel.shmall = 6815744
kernel.shmmax = 27917287424
kernel.shmmni = 4096
...
vm.nr_hugepages = 12292

Y listo, ahora si pude abrir mi base de datos :)


SQL> startup nomount pfile='/home/oracle/working/antunez/initBLADB.ora';
ORACLE instance started.

Total System Global Area 2.5655E+10 bytes
Fixed Size      2240344 bytes
Variable Size   2818572456 bytes
Database Buffers  2.2750E+10 bytes
Redo Buffers     84033536 bytes
SQL> show parameter large

NAME         TYPE  VALUE
------------------------------------ ----------- ------------------------------
large_pool_size        big integer 0
use_large_pages        string  ONLY

Espero que te sirva estas definiciones y compartelo si te gusta o tambien cualquier opinion es bien recibida.




lunes, 14 de octubre de 2013

Algo muy personal ... (Nada relacionado con Oracle)

Tengo que empezar con una pequeña notificación, que si llegaste a este artículo en particular, en busca de algo relacionado con Oracle, no lo encontrarás esta vez, tengo que invitarte a regresar en unos días para que encuentres algo técnico.

Esta vez es algo muy personal, ayer una persona con quien estoy relacionado directamente, me dijo que yo no estaba agradecido con la vida que tengo, y con las personas que me han llevado en sus hombros para que yo pueda estar donde estoy. Y estoy escribiendo para que algún día lea esto, ya que es imposible hablar con esta persona, y no tengo ninguna intención en desgastarme en buscar algo que no me interesa encontrar, mas bien lo hago esperando de que algún día deje su egocentrismo y vea lo solo que esta y se esta quedando, y no por mi, por que yo soy feliz con quien soy y con lo que tengo, sino por esta persona.

Me considero una persona tranquila y algunos podrían decir que soy un tipo de ermitaño, y no alguien que sobresalta en una habitación, que normalmente no me gusta ir de fiesta, no bebo, no fumo y no me gusta bailar, por lo que de inmediato algunas personas caminan y se alejan de mí, pero si tu decides tomar un café y charlar sobre un buen libro, música, películas, comida, viajes, juguetes, experiencias de la vida y sobre todo, la FOTOGRAFÍA que es mi pasión, podemos tener una conversación agradable y larga que puede durar días. Una cosa , y es mi mayor calidad y mi mayor debilidad, yo soy muy transparente, si no me gusta algo o alguien, te darás cuenta de esto inmediatamente, no sé cómo hacer una pequeña charla y mantener en marcha una platica absurda, con alguien que no me interesa o que dice puras burradas.

Pero a lo que quiero llegar, es que estoy más que agradecido con la vida, con lo que soy y con los que me han ayudado a llegar hasta aquí y están ayudando a llegar a la siguiente etapa. Tres personas se encuentran en la parte superior de la lista, y estos son mi madre, mi frater y mi esposa, uno es mi apoyo y amiga, el otro es mi inspiración total e intento todos los días para ser sólo una cuarta parte de esa persona y la última es la persona que completa y da mucho sentido a mi vida.

Para los que me conocen, saben que vengo de caminos rocosos pero disfrutados, para los que no, sólo para darles una idea, hubo días que mi madre nos daba sólo una sandía para comer, porque eso es todo mi mama podía comprar, en la universidad, llegue a hacer viajes en autobús de 1 hora, con un pie fracturado, de pie todo el camino, porque nadie te daba su asiento, el camión sin un sistema de calefacción, a las 06:00 AM en temperaturas de 0 º o a veces,  más bajas y llegar a una escuela que en unos salones tenia las ventanas rotas y llegar y sentarse en una silla de metal, si te puedes imaginar que a veces escribía a la velocidad de la luz en clase  (sarcasmo) :).  A lo que estoy tratando de llegar es que yo no soy diferente a ti, y que sólo puedo estar donde estoy, por todos los sacrificios que han hecho las personas que me quieren y las oportunidades que no he dejado ir.

Siempre he pensado, y siempre pensaré, que el respeto y el amor es un bien ganado, no un hecho, no porque tú eres mi tío, tía, abuelo, primo, padre o sobrina, automáticamente tienes mi amor y respeto, y si crees esto, estás totalmente equivocado. El amor, el respeto y la amistad es algo que se trabaja y se vive día a día, que lo respiras y lo vives, tu no naces con esto, y de igual manera se pueden romper fácilmente si no se nutren.

Lo que si quiero hacer es dar las gracias a todos los que me han ayudado a subir cada escalón de mi vida, que es una lista laaaaarga para escribir, y que tu ya sabes quien eres, por que probablemente ya te lo he dicho.

Y para aquellos que dicen que no estoy agradecido y contento con la vida, tengo 2 fotos para ti:








miércoles, 2 de octubre de 2013

Recapitulando Oracle Open World 2013

Bueno aquí estoy de regreso, después de una semana muy intensa en el Oracle Open World 2013. Esta vez tuve la grata experiencia de dar una platica, y estoy mas que agradecido con IOUG y con Oracle por la oportunidad.



Aunque esperaba que la platica no tuviera mucha gente, tuve casa llena, y eso lo hizo una experiencia muy gratificante, y que además tuviera 15 o 20 minutos de preguntas en el pasillo, de la misma manera al día de hoy me siguen llegando correos y tweets acerca de la platica, así que creo que no hice un mal papel .

De igual manera les platico que se anuncio en el OOW lo que es el In-Memory Database, aunque no se todavía en que difiere del producto de Times Ten, este ya viene integrado en los binarios de 12c (Futuro Release, no el actual).

Otra de las cosas que me llamo la atencion es que no hicieron una actualizacion a la serie de Exadata, mas bien lo que hicieron fue anunciar su maquina M6-32 - Big Memory Machine, que realmente va a la par con el anuncio de In-Memory en 12c, ya que sus caracteristicas son algo impresionante (32TB de DRAM, 32 SPARC M6 chips , el M6 tiene 12 cores por procesador, 96 threads por procesador) y con In-Memory el scan, segun Larry, que puede hacer  341072 millones renglones/segundo.

Y ya para cerrar esta entrada, lo mejor es convivir con viejos y nuevos amigos, compartir ideas y buenos momentos en cenas, conciertos y partidos de beisbol, y eso me hace nada mas esperar que llegue pronto Septiembre del 2014 para volver a compartir una semana de locos :)


miércoles, 28 de agosto de 2013

Oraclenerd y la primera playera de Oraclenerd para México y Latinoamerica

Esta entrada no tiene nada técnico y va a ser corta pero es para una buena causa.

En nuestra comunidad de blogeros y conferencistas , existe una persona que su nombre no solo es sinónimo de lo que representa esta agrupación de personas que estamos entusiasmadas a compartir nuestro conocimiento, sino que también tiene una marca que nos identifica a todos los que nos apasiona el mundo de Oracle, su nombre es Chet Justice a.k.a. Oraclenerd.

El tiene una hija que tiene autismo, a la que el mismo apoda Katezilla, y una de las maneras en la que la comunidad apoya a el y a su hija, es a través de las playeras de Oraclenerd , estas playeras/sudaderas tienen varias formas y tamaños , pero lo mas original es que también los que estamos cerca de esta comunidad , hemos tenido la oportunidad de aportar con ideas de como puede ser una playera que representa a nuestra region y/o persona.

Con mucho orgullo y responsabilidad aqui les presento la primera playera de Oraclenerd para México, apodada la playera de René Antunez , y el diseño que tiene es el que se muestra en la imagen de abajo, si te gusta, no dudes en darle click a la imagen y comprar tu playera, aparte de que vas a tener una playera super fregona, estas aportando una muy buena causa.

The Rene Antunez Shirt

Aqui tambien un video en el que el mismo te explica el origen de las playeras, esta en ingles y empieza a hablar a partir del minuto 5:56