Último certificado del año, MySQL 5.0 Developer

Justo cuando llegaba el final del año conseguí mi objetivo, el certificado MySQL 5.0 Developer. Ya tengo el pack completo 😀 La verdad es que este me ha parecido ligeramente más complicado que los anteriores, más que nada por mi poca experiencia con el lenguaje SQL. Pero para eso es están las certificaciones, para aprender.

Ahora toca centrarse en aplicar lo aprendido y seguir mejorando poco a poco. Tengo muchos libros para leer en mi Kindle pero poco tiempo. He empezado por "MySQL High Availability" que a pesar de ser un poco pesado de leer en algunas partes y que son muy pesados con su librería de Python, es un buen libro para ampliar los conocimientos en replicación y alta disponibilidad.

Fuera de la lectura técnica, ¿tenéis alguna recomendación para leer en este 2012? A mi me ha picado la curiosidad Metro 2033.

Lock wait timeout exceeded; Try restarting transaction

Al ejecutar una query en un MySQL contra una tabla con el engine InnoDB nos podemos encontrar con el error:

ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction

La variable innodb_lock_wait_timeout permite definir el tiempo va a esperar una query a obterner un lock, por lo que podemos minimizar este error aumentando este timeout a costa de asumir que las queries pueden tener esta tiempo el thread bloqueado a la espera. Dependiendo del entorno quizá nos interesa incluso bajarlo para evitar que las queries se queden esperando (por ejemplo en entorno web). Vamos a ver como investigar este problema viendo las transacciones implicadas en un problema de este tipo.

Primero vamos a ver como ver las transacciones de InnoDB. Para ello primero vamos a desactivar el …

[Lea más]
Readers’ Choice Awards 2011

Y salieron los premios anuales de la revista Linux Journal, me topé con algunas sorpresas y otras no tanto, y puedo resaltar los ganadores de algunas categorías que me interesan:

  • Mejor distribución de Linux: Ubuntu (faltaba mas)
  • Mejor entorno de escritorio: Gnome 3 (de verdad no esta tan mal)
  • Mejor navegador: Firefox  :/
  • Mejor gestor de base de datos: MySQL (seguido muy de cerca por PostgreSQL)
  • Mejor lenguaje de programación: Python? (creo que es hora de empezar con «esa nota»)
  • Mejor juego: World of Goo (creo que vale la pena las 20 fichas que cuesta)

La lista es larga, son 45 categorías, les sugiero que le hechen un vistazo:

[Lea más]
Eliminar numeros de linea con Vim

¿Quién no ha buscado código fuente en la red? Algunos sitios comparten segmentos de codigo fuente incluyendo el numero de línea, sé que lo hacen intencionalmente por que disfruntan sabiendo que debemos darnos el trabajo de eliminar las numeraciones de linea para poder compilar el codigo brindado, ademas de fijarnos en otros detalles.

Aqui una muestra clásica de un copy paste desde una pagina web hacia Vim (u otro editor):

Para un segmento de codigo de unas cuantas lineas no hay ningun problema, pero si se tratan de cientos de lineas, nos tomaría varios minutos… me da pereza de solo pensarlo.

Solucion rápida: Vim

[Lea más]
Probando UDFs para MySQL: Title Case

Conocemos «de sobra» lo que hacen las funciones LCASE y UCASE en MySQL, otros gestores también la implementan con alguna variación en el nombre pero con el mismo resultado.

Pero que pasa si queremos una función que convierta un texto al tipo Titulo, conocido también como title case, es decir convertir «un texto arbitrario» en «Un Texto Arbitrario«, para este caso no existe la función mágica que haga esa conversión y tenemos que escribir una propia.

No es necesario «reinventar la rueda» (aunque podría hacerlo), buscando encontré un repositorio de …

[Lea más]
Mis bugs reportados de MySQL-Workbench

Hace algunos meses, mientras usaba MySQL Workbench 3.2.33, noté varios bugs los cuales reporté inmediatamente, Oracle ya publicó la versión 3.2.35 y está apunto de publicar la versión 3.2.36, no había recibido noticias acerca de mis reportes.

Siempre es bueno colaborar a la mejora de herramientas libres, en este caso me dí cuenta de algunos detalles, incluso algunos de ellos pasarían desapercibidos. Pasado el tiempo ya, quise saber sobre mis bugs reportados y resulta que todos ya habían sido resueltos, y éstos son:

60354    Workbench can’t open a stored procedure
60557    Workbench closes without ask to save modified file
60562    The action pane won’t …

[Lea más]
Problema al emitir recibos de honorarios SUNAT

Hace unas horas me he afiliado a la emisión por recibos de honorarios de la SUNAT, y me he dado con la sorpresa que no se pueden emitir los recibos de honorarios y me imagino que también para otros casos.

Sé que llamando a la misma SUNAT o enviando una queja puede demorar una eternidad, y busque una solución mientras el genio que ha programado esto lo solucione.

Este es el punto donde se estanca, desde aquí no es posible avanzar mas:

Deben usar Firefox (con firebug plugin) o Chrome para que puedan seguir adelante, con los siguientes pasos (a prueba de tontos), lo voy a decir una vez mas Internet Explorer No Sirve!!!

Paso 1: Inspeccionar el campo (Click derecho sobre) Nombre o Razon social del …

[Lea más]
¿Donde comprar libros baratos?

Mientras sitios como Amazon ofrecen una variedad de libros única en la red, también existen los otros donde podemos encontrar libros usados a bajo costo y finalmente podamos tener el gusto de leer el libro original. Algunos dirán que es una tontería comprar libros antiguos sobre computación, bueno… cada quien con sus gustos.

Por ejemplo siempre he querido tener los cuatro tomos de la documentación de Visual C++ 6.0 edición impresa de mas de 1200 paginas cada uno, o los libros de David Kruglinski, Jeff Prosise o Herbert Schildt… una delicia para quienes aman coleccionar verdaderos clásicos.

En Amazon también podemos comprar libros usados a menor precio, pero hay sitios dedicados a vender libros usados (aunque ahora también venden nuevos), les dejo una lista de sitios en los que he comprado (y compro periódicamente) gran cantidad de libros nuevos y usados.

[Lea más]
Nuevos cambios, nuevas oportunidades

Hace bastante tiempo que no escribo aquí y creo que es necesario dar una explicación a las personas que me siguen, aunque no sean muchas ?

Mi vida laboral ha vuelto a dar un cambio importante, el segundo en lo que voy de año. Desde Octubre he entrado a trabajar en Percona como Support Engineer lo cual, bajo mi punto de vista, es un salto profesional grandísimo y le estoy muy agradecido a Ewen Fortune por esta oportunidad. Ahora mismo tengo de todo en mi vida, pero no tiempo libre ? Los que me conocen bien saben que en cuanto tengo un reto por delante no puedo dejar de trabajar y esforzarme dando lo mejor de mi, por lo que estos meses están siendo muy intensos. Mucha lectura, estudio y práctica para poder alcanzar el nivel de profesionalidad y conocimiento que tanto hacen destacar a Percona.

Seguiré publicando posts sobre MySQL en mi blog, pero en un principio con menos …

[Lea más]
Nuevos cambios, nuevas oportunidades

Hace bastante tiempo que no escribo aquí y creo que es necesario dar una explicación a las personas que me siguen, aunque no sean muchas 😉

Mi vida laboral ha vuelto a dar un cambio importante, el segundo en lo que voy de año. Desde Octubre he entrado a trabajar en Percona como Support Engineer lo cual, bajo mi punto de vista, es un salto profesional grandísimo y le estoy muy agradecido a Ewen Fortune por esta oportunidad. Ahora mismo tengo de todo en mi vida, pero no tiempo libre 😉 Los que me conocen bien saben que en cuanto tengo un reto por delante no puedo dejar de trabajar y esforzarme dando lo mejor de mi, por lo que estos meses están siendo muy intensos. Mucha lectura, estudio y práctica para poder alcanzar el nivel de profesionalidad y conocimiento que tanto hacen destacar a Percona.

Seguiré publicando posts sobre MySQL en mi blog, pero en un principio con …

[Lea más]