Cómo conectar Django con MySQL: Paso a Paso

Conectar Django con MySQL es un paso esencial para desarrollar aplicaciones web dinámicas. Comenzaremos creando un entorno virtual y avanzaremos hasta configurar el archivo settings.py, asegurando una integración fluida entre tu proyecto Django y la base de datos MySQL.

1Crear un carpeta donde estará el proyecto
bash
mkdir proyecto-django-mysql
2Crear un entorno virtual dentro de la carpeta proyecto-django-mysql

Si no tienes instalado virtualenv, puedes instalarlo de forma global:

bash
pip install virtualenv  # Instalar de forma global
virtualenv env          # Crear entorno
3Activar el entorno virtual

Dependiendo del sistema operativo:

  • Windows:

    bash
    . envScriptsactivate
  • Mac/Linux:

    bash
    . env/bin/activate

Para desactivar el entorno virtual:

python
deactivate
4Instalar Django dentro del entorno virtual
bash
pip install Django

Para instalar una versión específica:

bash
pip install Django==4.2.4

Verifica la versión instalada:

bash
python -m django --version
5Instalar un driver para conectar Django con MySQL

Los drivers más populares son mysqlclient y pymysql. Aquí usamos mysqlclient:

bash
pip install mysqlclient
6Crear un proyecto Django

Crea el proyecto en el directorio actual:

bash
django-admin startproject project_django_mysql .

Nota: El punto (.) al final indica que Django se instale en el directorio actual.

Ejecuta el servidor para verificar:

bash
python manage.py runserver
7Configurar la conexión a MySQL en settings.py

Edita el archivo settings.py:

python
DATABASES = {
  'default': {
      'ENGINE': 'django.db.backends.mysql',  # Motor de base de datos
      'NAME': 'bd_django_mysql',
      'USER': 'root',
      'PASSWORD': '',
      'HOST': '127.0.0.1',
      'PORT': '3306',
  }
}
8Crear la base de datos en MySQL

Usa tu herramienta favorita (como phpMyAdmin o MySQL Workbench) para crear la base de datos bd_django_mysql.

9Aplicar migraciones

Ejecuta las migraciones iniciales de Django:

bash
python manage.py migrate
10Ejecutar el servidor

Inicia el proyecto:

bash
python manage.py runserver

Accede a la URL http://127.0.0.1:8000 para verificar que todo esté funcionando.

Resultado Final

  Conclusión

Conectar Django con MySQL es un proceso esencial y relativamente sencillo que, al dominarlo, te permitirá desarrollar aplicaciones web robustas y escalables. A través de esta guía, aprendiste a configurar tu entorno, integrar la base de datos y verificar la conexión para asegurar un funcionamiento correcto.

Si necesitas otro ejemplo práctico, puedes consultar el siguiente repositorio:
Conectar base de datos MySQL con Django