Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Django, setelah memutakhirkan:Server MySQL telah hilang

Alasan dari perilaku tersebut adalah koneksi terus-menerus ke database, yang diperkenalkan di Django 1.6.

Untuk mencegah kesalahan waktu tunggu koneksi, Anda harus menyetel CONN_MAX_AGE di settings.py ke nilai yang kurang dari wait_timeout di konfigurasi MySQL (my.cnf ). Dalam kasus itu Django mendeteksi bahwa koneksi perlu dibuka kembali lebih awal dari yang dilempar MySQL. Nilai default untuk MySQL 5.7 adalah 28800 detik.

settings.py :

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

Dokumentasi:https://docs.djangoproject.com/ id/1.7/ref/settings/#conn-max-age

my.cnf :

wait_timeout = 28800

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak dapat terhubung dengan database setelah beberapa kali penerapan di server

  2. Laporan Kehadiran di MySql

  3. Pagination untuk menunjukkan nilai maksimal dan membatasi sisanya

  4. Apa perbedaan antara tinyint, smallint, mediumint, bigint dan int di MySQL?

  5. dapatkan nilai dari database MySQL dengan PHP