29 marzo, 2024

Cambiando el directorio de datos de MariaDB

Hoy vamos hablar del lugar donde se almacenan los datos de MariaDB (Mysql) pues nos puede interesar por varios motivos:

  • Tener localizado el directorio en un lugar que podamos tener acceso con permisos para por ejemplo Backup, tengamos en cuenta que normalmente el directorio de datos esta en directorio con datos root que nos interesa que estén lo más lejos posible de otras aplicaciones y usuarios.
  • Tener los datos en un disco externo a nuestro servidor de base de datos.
  • Tenemos nuestro equipo para desarrollo (ejemplo el mio) y según el desarrollo que tenga que ver tengo discos distintos de forma que no junto datos de uno con otros.

Lo primero es localizar el directorio actual y nada más fácil que entrar en MariaDB con el comando «mysql -u root .p» y desde el ejecutar «select @@datadir;·

Una vez tenemos el directorio, lo que hacemos es copiarlo a nuestra nueva ubicación con un cp recursivo (-r) y que nos guarde la información del modo, propietario y timestamp de todos los fichero (-p)

cp -r -p <directorio origen> <directorio destino>

Una vez tengamos estos datos en el nuevo directorio, asegurar que el usuario con el que arranca MariaDB tiene acceso, pararemos el servidor y cambiaremos la configuración en el fichero my.cnf.

service mariadb stop

Podemos tener varios my.cnf (o otro fichero de configuración)   por lo que buscaremos en ellos donde tenemos definida la variable datadir que sera el que tenga la configuración propia del servidor. Recomiendo ver el enlace https://mariadb.com/kb/en/library/configuring-mariadb-with-mycnf/ en el que podremos ver las posibles localizaciones de los ficheros de configuración y el orden jerárquico en el que los lee. También se puede ver las diferentes secciones (a nosotros nos interesa [mysqld] por ser la de servidor tanto MariaDB como mysql) y a quien afecta si a la configuración de servidor o de cliente.

En nuestro caso vimos que la configuración con más prioridad y donde estaba configurado el directorio era el fichero «/etc/mysql/mariadb.conf.d(50-server.cnf» por lo que cambiamos la variable «datadir» a la nueva ubicación.

Y con esto ya esta, basta con volver a levantar el servicio y comprobar que se ha cambiado el directorio.

service mariadb start

Para comprobarlo podemos crear una base de datos nueva «CREATA DATABASE PRUEBA» y confirmar que se crea el directorio de estos archivos en esta localización y no en la antigua, y todavía no nos lo creemos se realizamos un «show databases» podremos comprobar que si cambiamos a la localización antigua no se vera esa base de datos.

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información básica sobre protección de datos Ver más

  • Responsable: Javier.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio. El Titular ha contratado los servicios de alojamiento web a Hostinger.es que actúa como encargado de tratamiento.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Ver
Privacidad