Antes de comenzar a tocar código para crear nuestra aplicación es muy importante definir la configuración de base de datos en Laravel. Laravel ofrece soporte para varios gestores de base de datos como MySQL, PostgreSQL, SQLite, SQL Server, entre otros. Veremos la configuración de cada una.
¡Hola! ¡Bienvenidos al curso de Laravel nivel intermedio!
¡Empecemos!
¿Qué es una base de datos?
Una base de datos es un conjunto organizado y relacionado de datos que nos permite almacenar y gestionar grandes cantidades de información de manera eficiente. Para facilitar su administración, generalmente se almacena en un sistema de gestión de base de datos (RDBMS).
Configuración de una base de datos en Laravel
La configuración de la base de datos en Laravel se realiza en el archivo .env. Este archivo contiene variables de entorno que Laravel utiliza para establecer la conexión con las distintas bases de datos entre las cuales tenemos MySQL, PostgreSQL, SQLite, SQL Server.
Configuración de SQLite
Laravel, por defecto ya viene configurado para usar con una base de datos en SQLite (El archivo de SQLite se encuentra en el directorio “Database” con el nombre de “database.sqlite), por lo que podemos ejecutar de forma directa las Migraciones y Seeders.
DB_CONNECTION=sqlite

En el caso que que la ubicación física del archivo .sqlite este en otro directorio se debe utilizar una ruta absoluta.
DB_CONNECTION=sqlite DB_DATABASE=/ruta-db/htdocs/cursos-online/public/cursos-online.sqlite
Configuración de MySQL
Laravel en su actual versión, por defecto ya viene configurado para usar con una base de datos de SQLite. Sin embargo, se puede configurar para utilizar una base de datos en MySQL, en el campo DB_CONNECTION debemos cambiarlo a “mysql”, en el campo DB_DATABASE registramos el nombre de la base de datos en nuestro caso es “cursos-online”, en el campo DB_USERNAME registramos el usuario root (en caso de tener una contraseña de base de datos esta debe registrarse en el campo DB_PASSWORD).
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=cursos-online DB_USERNAME=root DB_PASSWORD=
Configuración de PostgreSQL
En el archivo .env establecemos la conexión con una base de datos PostgreSQL, similar a una conexión a MySQL solo cambia los parámetros de conexión y puerto.
DB_CONNECTION=pgsql DB_HOST=127.0.0.1 DB_PORT=5432 DB_DATABASE=cursos-online DB_USERNAME=root DB_PASSWORD=
Para poder trabajar con una base de datos en PostgreSQL tenemos que instalar en nuestra máquina local el paquete de PostgreSQL y su administrador. También, necesitamos habilitar el paquete pgsql en el archivo de configuración de PHP.
Configuración de MariaDB
La configuración de una base de datos MariaDB en Laravel es similar a la configuración de MySQL, ya que MariaDB es un reemplazo compatible con MySQL y comparten la misma sintaxis.
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=cursos-online DB_USERNAME=root DB_PASSWORD=
Configuración de SQL Server
SQL Server requiere algunos pasos adicionales como instalar los controladores de SQL Server para PHP según el sistema operativo que estemos utilizando e instalar el paquete de SQL Server más el administrador. La configuración de una base de datos SQL Server es la siguiente:
DB_CONNECTION=sqlsrv DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=cursos-online DB_USERNAME=root DB_PASSWORD=
¿Qué son las migraciones en Laravel?
Las migraciones en la Laravel son como un control de versiones de la base de datos, las cuales nos permiten gestionar de una mejor manera los cambios que se van realizando en el tiempo de la estructura de la base de datos. Con la migración podemos crear nuestras tablas, los campos de las tablas y sus relaciones.
Ejecutar las migraciones
Laravel utiliza las migraciones para crear las tablas necesarias en nuestra base de datos. En este punto tenemos que tener correctamente configuradas la conexión con la base de datos que estemos utilizando. Con Artisan escribimos la siguiente línea de código:
php artisan migrate
También podemos utilizar la palabra reservada “fresh”, este comando lo que hará es primeramente borrar las migraciones anteriormente ejecutadas y toda la estructura de base de datos creada. Seguidamente vuelve a ejecutar todas las migraciones desde cero (se debe de tener especial cuidado al ejecutar este comando porque borrar todos los datos introducidos anteriormente).
php artisan migrate:fresh
Ahora estamos listos para comenzar con el desarrollo de nuestro proyecto. Todo el código fuentes de este y todos los ejemplos desarrollados lo puedes encontrar en el repositorio de GitHub.
En la próxima clase veremos las migraciones en Laravel 11.
¡Te espero!
Saludos y éxitos.

Victor Peña
Desarrollador de software Backend Developer, experto en Laravel Framework, PHP, JavaScript y MySQL. Creador de contenidos de emprendimiento y desarrollo de software.
Pingback: Instalación y configuración de Laravel - Norvic Software