Herramientas para MySQL

Octubre 18th, 2007

Gracias a Alberto, compi del curro, y a su vez a nuestro gran maestro en MySQL, me entero de la existencia de las MySQL Toolkits, se trata de un conjunto de utilidades de linea de comandos que nos ayudan, y de que manera, con el manejo de MySQL en entornos de mundo real.

En mi actual trabajo utilizamos MySQL como servidor de base de datos, y constantemente nos vemos en la necesidad de exprimir al máximo consultas, sincronizaciones, etc. Así que la ayuda que nos brinda este conjunto de utilidades es super valiosa.

Lo que más me gusta:

  • MySQL Table Sync, ofrece un sistema de sincronización tabla a tabla más eficiente.
  • MySQL Visual Explain, analiza la información de la orden EXPLAIN y ofrece información más visual mucho más fácil de analizar

Todas las utilidades son stand-alone y sólo tienen dependencia de Perl y el módulo DBI. Vale la pena echarles un vistazo.

Como saber el tamaño de un directorio en Linux

Octubre 18th, 2007

Desde la linea de comandos:

du -s -h nombre_directorio

Primeros pasos con Subversion (Parte II)

Diciembre 17th, 2006

En el artículo anterior, vimos como crear un repositorio y cómo añadir nuestro código al mismo. Hoy vamos a continuar con unos pequeños ajustes que nos facilitarán el día a día con Subversion y además, permitiran el acceso a diferentes usuarios al repositorio.

Básicamente estos ajustes consisten en:

  • Crear un grupo para aquellos usuarios que trabajen con SVN
  • Añadir los usuarios al nuevo grupo
  • Modificar los permisos del repositorio

Vamos manos a la obra, desde una terminal tomamos acceso como root:

sudo -s

Una vez conectados como root, creamos un grupo para subversion:

groupadd svn

Después añadimos a este grupo aquellos usuarios de nuestro sistema que vayan a trabajar con Subversion, por ejemplo:

adduser usuario svn

Ahora, cambiamos los permisos del sistema de archivos del repositorio:

(Suponiendo que /var/svn es la ruta donde almacenamos los diferentes repositorios para cada proyecto )

chgrp -R svn /var/svn

chmod -R 0770 /var/svn

chmod g+t /var/svn/proyecto/db

El último paso hay que repetirlo para cada repositorio, (la ruta a db será diferente según el nombre de cada repositorio).

Bien, con estos simples pasos hemos conseguido que cualquier usuario, que no sea root, pueda trabajar con el repositorio, para ello tan sólo habrá que añadirlo al grupo svn. en un próximo artículo veremos como acceder remotamente a nuestro repositorio utilizando  Eclipse.

Primeros pasos con Subversion

Diciembre 7th, 2006

En el artículo anterior, vimos como instalar Subversion en un sistema Ubuntu, hoy vamos a ver como realizar las tareas típicas.

Si hemos instalado con éxito SVN, ya podemos empezar a crear repositorios para guardar nuestro bien más valioso: el código fuente.

Desde un terminal, nos cambiamos a modo root:

sudo -s

Creamos un directorio donde posteriormente crearemos los repositorios para nuestros proyectos, esto es más una cuestión de gustos, hay quien prefiere utilizar un único repositorio para después crear subcarpetas para cada proyecto. Personalmente, prefiero generar un repositorio diferente para cada proyecto, veremos más adelante que esto nos ofrece más flexibilidad en según que situaciones.

mkdir /var/svn

Ahora creamos el repositorio para nuestro proyecto:

svnadmin create /var/svn/proyecto

Cambiar proyecto por el nombre de vuestro proyecto. Sugerencia: evitaremos problemas si escribimos el nombre en minúsculas y sin espacios.

Si vamos al directorio del repositorio y hacemos un ls, veremos la estructura de directorios y de archivos generadas por SVN. Es interesante darle un vistazo al fichero README.txt, éste nos avisa que no debemos crear o modificar directamente los archivos del repositorio, para eso ya están las herramientas de SVN.

Bien, ya tenemos el repositorio creado, ahora habrá que crear una estructura de directorios para mantener nuestro código organizado.

Creamos la estructura básica:

  • un directorio trunk donde se almacena la rama de código principal
  • un directorio tags para guardar “fotos” o estados concretos de nuestro proyecto (ideal para marcar versiones de nuestro proyecto)
  • y finalmente, el directorio branches por si queremos trabajar con ramas diferentes del proyecto

Otra vez desde la terminal (introducir la orden en una sola línea):

svn mkdir -m "layout inicial" file:///var/svn/proyecto/trunk file:///var/svn/proyecto/tags file:///var/svn/proyecto/branches

Con esto tenemos ya preparado nuestro repositorio para empezar a añadir código en él. Supongamos que tenemos un directorio (/home/usuario/proyecto) con los archivos de nuestro proyecto que queremos proteger.

El primer paso es importar todo el arbol del proyecto al repositorio:

cd /home/usuario/proyecto
svn import -m "import inicial" . file:///var/svn/proyecto/trunk
Veremos los mensajes del proceso de importación, cuando el proceso termine la importación veremos un mensaje parecido a este:

Commit de la revisión 1.

Ahora ya tenemos nuestro proyecto “guardado” en el repositorio, a partir de este momento debemos descartar la ubicación original del proyecto, en nuestro ejemplo /home/usuario/proyecto, y empezar a trabajar con una “copia de trabajo” del proyecto.

El proceso típico de trabajo se resume de la siguiente forma:

  • Checkout o creación inicial del directorio de trabajo, esto sólo hay que hacerlo una vez
  • Update, actualización de nuestra copia con los cambios que se hayan producido en el repositorio, esto es básico en entornos con más de un desarrollador. Es la manera de actualizar nuestra copia con los cambios realizados por el resto del equipo
  • Commit, guardar nuestros cambios en el repositorio.

Vemos ahora como crear una copia de trabajo a partir de nuestro flamante repositorio:

Salimos del modo root, con exit, ya que nos interesa que los archivos de trabajo se creen con nuestro usuario habitual:


exit
cd /home/usuario
svn co file:///var/svn/proyecto/trunk/ proyecto/

Nos apareceran los mensajes de importación, cuando finalice el proceso, entramos en el directorio de trabajo y veremos los archivos descargados del repositorio. Con esto damos por finalizado esta primera toma de contacto, en un próximo articulo veremos como acceder a nuestro repositorio desde otros pc.

Instalar Subversion en Ubuntu 6.10

Diciembre 6th, 2006

Esta vez toca una mini-mini-guía para instalar el excelente sistema de control de versiones Subversion (AKA SVN) en la última versión de Ubuntu (Edgy Eft).

SVN nació como alternativa a CVS, tomando lo que ya funcionaba y corrigiendo o añadiendo funcionalidades inexistentes. El caso es que, desde que prácticamente casi todas las herramientas de desarrollo más populares incluyen soporte de SVN, este sistema se está convirtiendo rápidamente en la alternativa open source más utilizada en el campo de los sistemas de control de versiones.

Instalar SVN en Ubuntu es muy sencillo:

Abrimos una sesión en el terminal, y nos ponemos en modo root:

sudo -s

Después de introducir la contraseña, ya podemos introducir las ordenes con privilegios de root

Para instalar SVN, tan sólo tenemos que utilizar apt-get:

apt-get install subversion

El sistema apt nos pedirá confirmación y procederá a la instalación de los paquetes correspondientes. Si todo va bien, entonces podemos verificar la instalación, llamando a la utilidad de administración de SVN:

svnadmin help

Si nos aparece la ayuda de línea de comandos de svnadmin, la cosa ha ido bien. En un próximo artículo aprenderemos a crear un repositorio y a empezar a proteger nuestro código.

Akismet en acción

Diciembre 4th, 2006

Una de las razones principales para actualizar a la última versión de Wordpress ha sido el constante bombardeo de spam en los comentarios.

Gracias a Akismet, un plugin de serie en esta versión, la gestión de comentarios spam es prácticamente nula. Akismet identifica y separa los comentarios que son sospechosos de spam, con un índice de aciertos en mi caso del 100%, ahora únicamente me limito a echar un vistazo, y dejar que se eliminen automáticamente.

akismet

Para utilizar Akismet, es necesario disponer de una cuenta, es gratuita, en wordpress.com

Actualización a Wordpress 2.0.5

Noviembre 18th, 2006

Parece que de momento la actualización del sitio a la versión 2.0.5 funciona, tengo todavía que pulir algunos detalles que tenía personalizados en la versión anterior, creo que era la 1.0.4.

El upgrade ha ido suave como la seda, tenía ganas de actualizar porque ultimamente el spam me tenía frito.

Espero que no surga ningún fallo…

Microsoft publica la release candidate 1 de Internet Explorer

Agosto 25th, 2006

Pues eso, ya está disponible para la descarga la release candidate 1 del IE 7. La nueva, y esperada versión, del navegador aporta las siguientes “novedades”:

  • Navegación con pestañas
  • Soporte integrado de RSS
  • un nuevo look mejorado
  • Mejoras en la impresión
  • Un campo de búsquedas al más puro estilo Firefox
  • etc…

Personalmente, espero que hayan mejorado, porque tenían bastante trabajo, el soporte de estándares W3C, ya va siendo hora de que cada usuario use el navegador que prefiera, pero por favor hagan un poco más fácil la vida de los desarrolladores web, para que no nos dejemos las neuronas intentando corregir las diferencias entre navegadores.