Script para optimizar tablas InnoDB en MySQL

Cuando utilizamos MySQL es común optimizar tablas con muchos registros con cierta periodicidad, esto para solventar problemas de fragmentación, entre otros. La verdad esta es una de las cosas del modelo de PostgreSQL que echo en falta, quizás no es tan «amigable» pero todo queda claro desde el inicio.

En PostgreSQL hay un proceso de aspiradora (vacuum) que va eliminando periódicamente registros inutilizados en tablas, su configuración, pan nuestro de cada día para un admin de BBDD que debe ajustarlo con frecuencia.

Bueno…. Volviendo a MySQL, si necesita optimizar tablas InnoDB, lo mejor que puede utilizar son ALTER nulos, estas son instrucciones DDL de tipo ALTER sin parámetros que permiten seguir trabajando con las BBDD, porque realiza copias temporales en disco. La cuestión es que esta herramienta «reconstruye» la tabla y elimina, entre otros, los problemas de fragmentación.

Aquí les dejo un script para optimizar de «un sólo golpe» varias tablas InnoDB:

#!/bin/bash
 
if [ $# -lt 2 ]; then
        echo "You must specify database host"
        echo "Eg. script.sh MY_DATABSE 192.168.10.1"
        exit
fi
 
db="$1"
host="$2"
user="root"
declare -a tables=(Table1 Table2 Table3)
 
stty -echo
read -p "Enter MySQL's Admin password: " password
stty echo
 
for table in ${tables[@]}; do
        echo $table &&
        time mysql -u $user --password=$password -h $host $db -e "ALTER TABLE $table ENGINE=INNODB"
done

Básicamente optimizamos las tablas especificadas (en un arreglo) e imprimimos el tiempo que toma cada instrucción (time).

Si tiene la certeza de que todas las tablas de una BD son InnoDB y quiere optimizarlas todas aún más rápido, puede hacerlo valiéndose del comando «show tables»…

#!/bin/bash
 
if [ $# -lt 2 ]; then
        echo "You must specify database host"
        echo "Eg. script.sh MY_DATABSE 192.168.10.1"
        exit
fi
 
db="$1"
host="$2"
user="root"
 
stty -echo
read -p "Enter MySQL's Admin password: " password
stty echo
 
mysql -u $user --password=$password -h $host --batch --skip-column-names $db -e "SHOW TABLES" |
while read table; do
        echo $table &&
        time mysql -u $user --password=$password -h $host $db -e "ALTER TABLE $table ENGINE=INNODB"
done

La única diferencia es que las tablas ya no son especificadas a través de un arreglo (que recomiendo para BBDD grandes, donde optimizar todas las tablas podría demorar toda la vida), sino que se toman directamente del comando «SHOW TABLES» para una BD especificada.

Script para descargar videos flash en linux sin /tmp

Como todos sabemos la nueva versión de adobe flash plugin ya no deja los videos en la carpeta /tmp de linux, así que ese método ya no sirve para tal propósito. Por eso he creado un sencillo script para compartir aquí en mi blog, el cual explicaré como funciona de manera rápida y simple. Recuerda que si no te funciona bien o te gustaría ampliarlo lo puedes hacer de manera libre.
Continuar leyendo «Script para descargar videos flash en linux sin /tmp»

Descarga Chrome OS 1.2.725 RC


Chrome OS Linux es un nuevo sistema operativo libre que todo gira entorno al revolucionario navegador de Google, Chrome.

El objetivo de este proyecto es proporcionar una distribución ligera de Linux para vivir la mejor experiencia de navegación de la red.

Software destacados en Chrome sistema operativo Linux:

  • Linux kernel 2.6.37
  • GNOME 2.32 como entorno de escritorio
  • Google Chrome 12.0.725 navegador web
  • Google Picasa 3.0 gestor de fotos
  • LibreOffice 3,3 suite de oficina
  • GIMP 2.6 editor de imágenes
  • Wine emulador de Windows 1.3
  • Pidgin 2.7 de mensajería instantánea
  • Dashboard con barra de herramientas sociales
  • Centro de control

Fondos de escritorios nuevos y frecos y mucho más!
Requisitos del sistema operativo Linux de Chrome:

  • Procesador: Intel Pentium, Xeon o más reciente, AMD Duron,Athlon, Sempron, Opteron o más reciente
  • RAM: min. 256 MB
  • Disco duro: min. 1 GB
  • Tarjeta gráfica: compatible con tarjetas gráficas más modernas

La descarga esta vez es algo especial ya que en la página oficial del proyecto los enlaces que salen son de los servidores: uploaded.to y usershare.com y porque los servidores son lentos, he decidido subir la ISO a mi servidor y ofrezar la ISO en descarga directa desde el servidor de esta página.

Descarga: Chrome OS Linux 1.2.725 RC (x86) Live CD (133)

Linux Shell Scripting Cookbook

Linux-shell-scripting-cookbook

El uso apropiado de comandos por consola puede ayudarnos a encontrar soluciones para problemas con apenas algunas lineas de código.

La mayoría de los usuarios de GNU/Linux por falta de conocimiento desperdiciamos el potencial del shell de Linux.

Este buen libro nos ayuda de la manera más sencilla posible (con ejemplos) a sacarle provecho a esta maravillosa herramienta.

Linux-shell-scripting-cookbook

Fecha de publicación: Enero de 2011.

Idioma: Inglés

360 páginas

Formato: PDF (13 MB)

Pulsa AQUI para descargarte el libro Linux Shell Scripting Cookbook

BlackUbuntu – La nueva distribución «para pruebas de seguridad» basada en Ubuntu

Blackbuntu es la distribución de pruebas de penetración, que fue diseñado especialmente para estudiantes de formación en seguridad y profesionales de seguridad de la información. Blackbuntu distro Ubuntu es la base de pruebas de penetración de seguridad con entorno de escritorio GNOME. Es en la actualidad se está construyendo con el Ubuntu 10.10 y de trabajo en la referencia posterior.

Blackubuntu

Blackbuntu features the following upstream components:

Ubuntu 10.10, Linux 2.6.35 and Gnome 2.32.0 System requirements

* 1GHz x86 processor

*768 MB of system memory (RAM)

* 10 GB of disk space for installation

* Graphics card capable of 800×600 resolution

* DVD-ROM drive or USB port

Blackubuntu

BlackUbuntu os la podeis descargar desde el siguiente link
http://sourceforge.net/projects/blackbuntu/files/Community%20Edition/Community%20Edition%200.2/bbuntu-ce-0.2.iso/download

Una breve video review de BlackUbuntu