domingo, 29 de noviembre de 2009

Moviendo de sitio una base de datos mysql mediante enlaces simbólicos

La idea es sacar del path estándar de mysql a una base de datos. Para ello he seguido las instrucciones del manual de referencia de mysql: http://dev.mysql.com/doc/refman/5.0/en/symbolic-links-to-databases.html

Hay un par de cosas a tener en cuenta para que luego todo funcione bien:

1- Que los directorios y ficheros sean de dueño y grupo (del usuario y grupo): mysql. Para ello hay que usar los comandos de la shell: chown, chgrp.

2- En el caso del propio enlace simbólico hay que usar el parámetro -h de los comandos para que no desreferencie el enlace simbólico y cambie el dueño y grupo al propio enlace.

3- Lo más importante: en Ubuntu está en marcha el firewall apparmor que solamente deja que mysql toque unos cuantos directorios. Hay que editar el fichero: /etc/apparmor.d/usr.sbin.mysqld e incluir una línea (suponiendo que éste es el lugar en el que están los ficheros de la base de datos:

/home/jmgaguilera/mysql/** rwk,

Si no hacemos esto último obtenemos errores de escritura y lectura de las tablas de la base de datos cuando intentamos un select o un show tables. (errno 13)