Dans ce tutoriel nous allons voir comment configurer un projet Django avec un connecteur MySql vers une base de données MariaDB.
Les pré-requis
- Un poste de développement (ou un serveur) avec MariaDB installé avec une base de données existante vide
- Un projet Django opérationnel sur le poste pour le tutoriel nous utiliserons le projet suivant : https://gitlab.com/julienanne/django-deploy-production-example
Configurons le projet Django avec le connecteur MySql
Pour cela rendez-vous dans le fichier djangoexample/settings.py, la configuration du connecteur de la base de données se trouve dans la variable DATABASES est ressemble à ça par défaut.
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } }
Il faut le remplacer par ceci.
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'OPTIONS': { 'read_default_file': '/etc/mysql/my.cnf', }, } }
Quelques explications, déjà nous changeons de connecteur avec le paramètre ENGINE nous allons ici indiquer au connecteur mysql que toutes les informations de connexion seront dans le fichier /etc/mysql/my.cnf via le paramètre OPTIONS.
Éditons maintenant le fichier /etc/mysql/my.cnf et ajouter le contenu suivant à la fin du fichier
[client] database = NOM_DE_VOTRE_BDD user = UTILISATEUR_POUR_SE_CONNECTER password = LEMOTDEPASSE default-character-set = utf8
Sauver le fichier.
Nous repartons d’une base de données vide il faut donc exécuter les migrations, rendez-vous dans le dossier de votre projet django-deploy-production-example. Et lancer les commandes
./manage.py makemigrations ./manage.py migrate
Ok donc à ce moment là nous avons un projet Django connecté à votre base de données MySql / MariaDB qui tourne. Passons à la suite. Rendez-vous sur le sommaire du tutoriel pour continuer votre lecture.
Image par Johnson Martin de Pixabay
Tutoriel Django MySql Debian 10 Apache2 Let’s Encrypt Gitlab – Actus Julien ANNE
[…] Configuration du projet Django avec un connecteur MySql […]