24 lines
855 B
Python
24 lines
855 B
Python
import mysql.connector
|
|
import os
|
|
import sys
|
|
import logging
|
|
|
|
def connect_to_mysql(db_name: str = None):
|
|
"""
|
|
Se connecte à MySQL. Par défaut, utilise la base spécifiée dans DB_NAME,
|
|
mais peut être redirigé vers une autre base en passant db_name.
|
|
"""
|
|
try:
|
|
sys.path.insert(0, "/myenv/lib/python3.11.2/site-packages") # à ajuster si inutile
|
|
mydb = mysql.connector.connect(
|
|
host=os.getenv("DB_HOST"),
|
|
user=os.getenv("DB_USER"),
|
|
password=os.getenv("DB_PASSWORD"),
|
|
database=db_name if db_name else os.getenv("DB_NAME")
|
|
)
|
|
logging.info(f"Connexion MySQL à la base {mydb.database} réussie.")
|
|
return mydb
|
|
except mysql.connector.Error as err:
|
|
logging.error(f"Erreur de connexion MySQL : {err}")
|
|
sys.exit(1)
|