Mysql
 sql >> Base de données >  >> RDS >> Mysql

Django, après la mise à jour :le serveur MySQL a disparu

La raison d'un tel comportement est la connexion persistante à la base de données, qui a été introduite dans Django 1.6.

Pour éviter une erreur de délai de connexion, vous devez définir CONN_MAX_AGE dans settings.py à une valeur inférieure à wait_timeout dans la configuration MySQL (my.cnf ). Dans ce cas, Django détecte que la connexion doit être rouverte avant que MySQL ne la lance. La valeur par défaut pour MySQL 5.7 est de 28800 secondes.

settings.py :

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'CONN_MAX_AGE': 3600,
        <other params here>
    }
}

Documentation :https://docs.djangoproject.com/ fr/1.7/ref/settings/#conn-max-age

my.cnf :

wait_timeout = 28800

Documentation :https://dev.mysql .com/doc/refman/5.7/en/server-system-variables.html#sysvar_wait_timeout