Sobre mi

Mi nombre es Javier Morales Carreras. 

Desde el año 1999 estoy enteramente dedicado al desarrollo y la administración de bases de datos Oracle. 

En mis inicios, comencé siendo formador de Oracle Ibérica para un proyecto llamado PUE (Proyecto Universidad Empresa) en el que recibí e impartí todos los cursos de administración Oracle. Durante este tiempo conté con el apoyo de los grandes de la formación de Oracle en España e impartí formación en la Universidad Politécnica de Cataluña a universitarios y profesores de formación profesional.

En el junio de 2003 me certifiqué en Administración de Oracle8i y en 2009 actualicé mi certificación a Oracle9i y en 2011 a la versión Oracle10g. 

En la actualidad trabajo como consultor, administrador y formador.

Desde entonces, he dedicado aproximadamente unas 2300 horas impartiendo formación y más de 100 meses en proyectos, tanto como DBA de producción como de desarrollo, en aplicaciones datawarehouse, entornos de alta disponibilidad, realizando optimización de rendimiento desde la perspectiva de administrador y desarrollador, y realizando instalaciones, migraciones, planes de contingencia, recuperación ante desastres de entornos single instance, RAC, data guard (standby's, etc.), he realizado ponencias técnicas, escrito artículos tecnológicos en CUORE (Revista del Círculo de Usuarios de Oracle España), diseñado cursos de formación, redactado manuales para el alumno y, cuando he encontrado algo interesante que no estuviera publicado en algún blog o cuando he recopilado información disgregada sobre un tema concreto, he escrito en este blog para aportar mi granito de arena a aumentar el conocimiento público de Oracle en la red.

Recientemente he publicado mi primer libro "Optimización SQL en Oracle", disponible en Amazon.

Actualmente soy administrador de las bases de datos de Consellería de Sanidad.

Vivo en Valencia con mi mujer Myriam y mis tres hijos Teo, Jordi y Gael.

14 comentarios:

Unknown dijo...

Me alegra ver que te va muy bien!! Aunque no recuerdes quien soy, un abrazo.

Javier Morales dijo...

Hola Mario,

Pues si no me das más señas, difícil... lo siento! :) me he movido tanto (ciudades/proyectos) que tengo memoria de pez.

¿Me ayudas a recordarte?

Unknown dijo...

Ex-Novio de una amiga tuya. Mariluz, nos conocimos cuando vivias en Villalba. Deje el mundo de los videojuegos y ahora soy DBA de Oracle. Di con tu blog por casualidad, buscando unas cosas para un Rac de Oracle que estoy montando.

Saludos.

Javier Morales dijo...

Mario, por supuesto que me acuerdo de ti !!... de hecho, sigo teniendo contacto con Mari Luz!

Ten en cuenta que han pasado 11 años, y el mundo ha dado muchas vueltas!!... ¿te hiciste DBA de Oracle? ¿y no me dijiste nada? En esas fechas daba formación de Oracle en Madrid...

Pues nada, ya sabes dónde estoy! Para lo que necesites!

Un abrazo,
Javier

Unknown dijo...

Fue bastante despues de dejarlo con Mariluz. La empresa en la que estaba necesitaba un dba de Oracle y como tenia nociones de bases de datos, me pagaron los cursos de Oracle University. Cambie de empresa y ahora tengo mas tiempo para hacer laboratorios, pruebas, experimentos y demás mientras doy soporte a clientes o me mandan a otras empresas. Lo siguiente después de montar el rac y que funcione es hacer un Upgrade a la 11.2.0.3. jajaja.

Me alegro de que te vaya muy bien, a ver si sacas el libro y lo compro para darle un vistazo, nunca viene mal tener referencias de un experto.

Un abrazo.

Anónimo dijo...

Hola Javier,te sigo en tu blog frecuentemente, e intento aprender de tus comentarios y explicaciones.

Me gustaria sugerirte que, si puedes, realices unas entradas sobre lo siguiente:
- Pool de conexiones UCP en tomcat para asegurar una alta disponibilidad en aplicaciones java (He visto como aplicaciones java conectadas a un RAC se quedan colgadas cuando por algun percance se reinicia de forma inesperada un nodo del RAC, teniendo que reiniciar el tomcat de estas aplicaciones para que vuelva a conectar).
- UCP vs DBCP
- Algun ejemplo de datawarehouse con data miner. Es decir, partir de un caso en concreto y realizar alguna mineria básica.

Un saludo y gracias

Unknown dijo...

Hola anónimo, llego un año y medio tarde a tu petición. Disculpa el retraso.

Sobre el TAF (Transparent Application Failover, para que cuando una aplicación conectada a un nodo reconecte con el servicio hacia otro nodo), comentarte que la reconexión la haces desde la aplicación, sobre el JDBC. Échale un ojo a este documento.

Respecto a UPC vs. DBCP no tengo conocimiento sobre ese área. Lo siento...

Sobre un ejemplo de data mining, publiqué un artículo con un ejemplo sencillo (clustering). Éste es el artículo.

Muchas gracias! Un saludo,
Javier

Unknown dijo...

Hola Javier,

Sabes tenemos un problema con una configuración de un Heterogeneous Services.

Al usar el dblink hacia una bds informix, nos manda el siguiente error:

ERROR at line 1:
ORA-28500: la conexion de ORACLE a un sistema no Oracle ha devuelto este
mensaje:
[Informix][Informix ODBC Driver]Data source name not found and no default
driver specified. {IM002,NativeErr = -11041}
ORA-02063: 2 lines precediendo a TESTDB2

Ya realizamos las configurciones en los archivos init, tnsnames y listener.

La plataforma donde esta montado oracle 11g es linux, ya se creo el obdc y fue probado, esta ok, pero no podemos hacer uso del dblink.

Sabes de algún documento que podamos revisar?

De antemano gracias.

Saludos!!!

Rafael dijo...

Hola Javier y el resto de lectores.

No se donde dirigirme, estoy empezando con oracle y haciendo consultas sql en el trabajo, la question es que normalmente las pruebo con el sql developer y funcionan ok, pero las queremos traspasar Oracle Discoverer para que los usuarios puedan ejecutarlas y me da muchos errores de sintaxis que con developer no. Hay algun manual de "sintaxis" para el discoverer?? es frustrante.

muchas gracias por todo

Sergio Bravo dijo...

Sabes algo de FORMS3?

Unknown dijo...


Hola buen dia comienso a crear funciones de oracle me podrian ayudar cono crear

Unknown dijo...

Crear una función,
busca_historial (boolean) deberá comprobar, la existencia de historia de un empleado en la tabla job_history; la función devolverá TRUE si encuentra registros en la tabla y FALSE si no encuentra registros.

Unknown dijo...


Hola buen dia comienso a crear funciones de oracle me podrian ayudar cono crear

FranciscoG dijo...

Hola Javier, quisiera realizarte una consulta: En una clausula SELECT d.datos FROM tabla1 dd,tabla2 d, suponiendo que la tabla tabla1 tiene mayor cantidad de filas como tambien de campo que tabla2 , cual tabla debo poner primero en el FROM . Desde ya muchas gracias