How to connect Mysql database to Django

Anwar Ali
2 min readMar 27, 2023

--

A database is a crucial component of any web application as it enables us to store and efficiently organize data. When creating a website or application, selecting the appropriate database is crucial for enhancing its interactivity.

Photo by Rubaitul Azad on Unsplash

Django includes a pre-installed SQLite database, but it also supports various other databases such as PostgreSQL, MariaDB, MySQL, Oracle, and SQLite. There are also several database backends developed by third-party providers. Using Django middleware, we can communicate with the database. In this tutorial, we will learn how to connect a MySQL database to a Django application.

To configure a MySQL database in Django, you need to modify the DATABASES setting in your project's settings.py file. Here's an example configuration:

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'your_database_name',
'USER': 'your_database_username',
'PASSWORD': 'your_database_password',
'HOST': 'localhost',
'PORT': '3306',
'OPTIONS': {
'charset': 'utf8mb4',
},
}
}

Let’s break down each of the parameters:

  • ENGINE: The database engine you're using. In this case, we're using the MySQL database engine.
  • NAME: The name of your MySQL database.
  • USER: The username of your MySQL database.
  • PASSWORD: The password for your MySQL database user.
  • HOST: The host name of the MySQL server. In this example, we're using localhost.
  • PORT: The port number on which the MySQL server is listening. In this example, we're using the default port for MySQL, 3306.
  • OPTIONS: A dictionary of additional options for the database connection. In this example, we're setting the character set to utf8mb4, which supports emojis and other Unicode characters.

You can replace the values with your own MySQL database details, depending on your specific setup. Once you’ve made the necessary changes, save the settings.py file and Django will use the MySQL database for your project.

--

--

Anwar Ali
Anwar Ali

Written by Anwar Ali

Python Developer | Data Science, Machine Learning Engineer....... Chackout me here: https://www.youtube.com/@GeekySession

No responses yet