> Faqs > Cómo cambiar MySQL por MariaDB en Laravel Sail

Cómo cambiar MySQL por MariaDB en Laravel Sail

Tengo un proyecto que estoy empezando a manejar con Laravel Sail.

Actualmente se instaló Sail usando MySQL como motor de base de datos. Sin embargo, quisiera usar mejor MariaDB ya que en el servidor donde se va a publicar el proyecto se piensa usar también MariaDB.

La pregunta es ¿Cómo cambio la instalación de Sail para que se cree un contenedor con MariaDB en lugar del que tengo actualmente con MySQL?

Respuestas

Laravel Sail se puede administrar editando el archivo docker-compose.yml a mano Podrías cambiarlo para que se genere un contenedor de MariaDB... y ya. Pero también lo puedes hacer por comandos, tal como sigue.

Te recomiendo parar antes Sail con el comando

sail down -v

Así se borran los volúmenes asociados a los contenedores. Realmente no sé si será necesario, pero es un primer paso para quitar MySQL (por cierto, si tienes datos en la base de datos que te interesen, haz un backup antes!!!)

Luego puedes lanzar el comando de instalación de Sail para proyectos existentes:

php artisan sail:install

Ese comando te preguntará qué quieres instalar y te hará una nueva versión COMPLETA del archivo docker-compose.yml. Te recomiendo que si tienes algo en ese archivo que te interese lo guardes (con el control de versiones) o te crees una copia, porque se va a sobreescribir todo.

El comando sail:install se encargará de generar todos los servicios que le indiques:

Te saldrá un mensaje como este:

 Which services would you like to install? [mysql]:
  [0] mysql
  [1] pgsql
  [2] mariadb
  [3] redis
  [4] memcached
  [5] meilisearch
  [6] minio
  [7] mailhog
  [8] selenium
 > 

Entonces, suponiendo que necesites solamente mariadb escribirías "2".

Si quieres instalar varios servicios, entonces los separas por comas. Por ejemplo "2, 7"

Luego haces el "sail up" y debería estar ya tu proyecto con MariaDB.

Miguel Angel
3145 140 209 17