Suatu waktu saat membuka salah satu situs pribadi saya menemukan situs tersebut menalami error, tulisan yang tertampil di browser adalah “Error establishing a database connection”. Jika Anda pernah mendapat pesan serupa, berarti website anda sedang tidak bisa berkomunikasi dengan atau memiliki akses ke database anda. Hal ini tentunya akan menyebabkan website down dan tidak bisa diakses. Untuk itu anda harus bergerak cepat dalam proses penanganannya karena isu ini bisa mempengaruhi traffic, sales, dan analisis situs.
Beberapa tutorial di internet sudah saya coba untuk mengatasi permasalahan ini secara permanen, tetapi hasilnya masih nihil. Situs masih sering tiba – tiba mengalami Error establishing a database connection sehingga menyebabkan pengunjung tidak bisa mengakses situs saya sementara waktu.
Agar situs kembali aktif, cara yang perlu dilakukan sebenarnya cukup mudah yaitu dengan melakukan restart database supaya database bisa kembali terhubung dengan website. Tapi jelas tidak mungkin jika harus rutin mengecek dan menyalakan kembali database secara manual. Untuk itu saya mencoba membuat shell script yang berjalan otomatis untuk mengecek database sedang aktif atau tidak, jika tidak aktif secara otomatis service database dalam hal ini saya menggunakan MySQL akan terestart otomatis. Sehingga kita tidak perlu harus sering memantau situs kita lagi.
Cara Restart Otomatis MySQL di Linux
Pertama, login dahulu sebagai root
Kemudian buat file dengan nama restart_mysql
nano mysql_restart.sh
Selanjutnya isikan kode berikut
#!/bin/bash
if mysqladmin ping | grep "alive"; then
echo "MySQL Aktif"
else
service mysql restart
fi
Kemudian ubah mode agar bisa dieksekusi
chmod a+x mysql_restart.sh
Jika sudah lalu lanjutkan dengan mengedit cron
crontab -e
Dan tambahkan kode berikut di paling bawah
0 * * * * /root/mysql_restart.sh
Sript ini akan melakukan proses pengecekan MySQL setiap jam dan apabila diketahui database tidak aktif maka akan dihidupkan ulang secara otomatis sehingga anda tidak perlu takut