Los cheatsheets suelen ser unas tablas resumen que siempre conviene...

Los cheatsheets suelen ser unas tablas resumen que siempre conviene tener a mano. Existen miles de CheatSheets por la web, para servicios como Apache, Mysql o aplicaciones como Vim. Por ejemplo, en http://www.cheat-sheets.org/ teneís una colección al alcance de un click. Lo que aquí voy a enseñar es un pequeño truco para que todos ellos sean accesibles desde la consola, ya que no siempre tenemos un navegador a mano :)

Aprovechando que intento aprender Ruby y los conceptos de POO, haremos uso de las Gem de Ruby para dotar de CheatSheets a nuestra shell. La Gem que nos dará la funcionalidad se llama Cheat y su instalación es sencilla:

# gem install cheat
Successfully installed cheat-1.3.0
1 gem installed
Installing ri documentation for cheat-1.3.0...
Installing RDoc documentation for cheat-1.3.0...

[Lea más]
Ficheros master.info y relay-log.info de MySQL

Cuando habilitamos un slave se generan en el datadir dos ficheros con datos: master.info y relay-log.info con información relativa a la replicación: Para el caso del relay log se trata de un fichero que almacena la posición leída respecto al master y a que punto ha llegado el slave. Mediante un strings podemos ver el [...]

Dimensionado del innodb_buffer_pool basado en el hit rate

Para bases de datos InnoDB medianas y grandes nos podemos encontrar que herramientas como mysqltuner nos indican problemas como los siguientes: [!!] InnoDB data size / buffer pool: 50.9G/6.5G Evidentemente en las recomendaciones de mysqltuner nos aparecerá: innodb_buffer_pool_size (>= 50G) Evidentemente si disponemos de un SGI Altix 3700 Bx2 con 384 GB de RAM no [...]

ERROR 1010 (HY000): Error dropping database (can’t rmdir ‘./db/’, errno: 17)

Al intentar borrar una base de datos de MySQL nos podemos encontrar con el siguiente error: mysql> drop database db; ERROR 1010 (HY000): Error dropping database (can't rmdir './db/', errno: 17) Nos esta diciendo que no puede borrar el directorio con el errno 17, si buscamos que significa el código 17 en errno.h vemos: # [...]

Selecting n random items from an array in ruby

Selecting n random items from an array in ruby is quite simple using the sort_by method provided by the Enumerable class. If we apply sort_by{ rand } to an array (or to a hash) we obtain the same array randomly ordered. If we only want n random items from the array, we can apply the slice method to the randomly orderer array to get the first n elements. For example, suppose we want to get 3 random items from my_array:

> my_array = (1..10).to_a
=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
> my_array.sort_by{ rand }.slice(0..2)
=> [2, 9, 3]

You can find a more detailed explanation of how sort_by{ rand } works in …

[Lea más]
Actualizar de MySQL 5.1 a MySQL 5.5

La actualización de un servidor MySQL 5.1 a la versión 5.5 es muy directa, simplemente debemos tener en cuenta las diferencias entre las versiones. En la documentación de MySQL 5.5 podemos encontrar los cambios respecto a la versión anterior (MySQL 5.1). El cambio que quizá se tenga que tener más en cuenta por los usuarios [...]

Ver el usuario con el que estamos conectados en Oracle y MySQL

Cuando nos conectamos a una base de datos con varios usuarios resulta fácil perderse y no saber en cada terminal con que usuario nos hemos conectado. Para ver desde sqlplus de Oracle el usuario con el que estamos conectados podemos realizar la consulta “SHOW USER“: SQL> show user; USER is "EJEMPLO" En esta caso nos [...]

Modos de la query cache

La query cache es un mecanismo mediante el cual si ejecuta la misma query multiples veces, sin que los datos se hayan modificado, devuelve los resultados de una zona de memoria que los conserva para no tener que tener que ir a buscarlos de nuevo si son pedidos repetidas veces. Mediante SHOW VARIABLES podemos ver [...]

MySQL en modo bootstrap (similar a single user)

Una opción interesante del mysqld es la opción –bootstrap, esta se usa para inicializar la base de datos sin arrancar totalmente la instancia. Vamos a ver como funciona y como podemos usarla para tener el MySQL en un modo similar a lo que sería el single user de Unix. Con dicha opción –bootstrap arranca el [...]

Dimensionar max_connections y max_user_connections

Los parámetros que limitan el número de conexiones a MySQL son max_connections y max_user_connections. Gracias a ellas podemos hasta cierto punto controlar el MySQL para evitar que devore los recursos del sistema. El parámetro max_connections define el número global de conexiones permitidas (sumando todos los usuarios), pero siempre se reserva una extra para la conexión [...]