Berikut ini adalah pesan error yang saya dapatkan di browser.
Table './DATABASE_NAME/jos_session' is marked as crashed and last (automatic?) repair failed SQL=INSERT INTO `jos_session` (`session_id`, `client_id`, `time`) VALUES ('b0c45b738cc26fa7126bd815e496457b', 1, '1432701153')
Saya sudah mengetahui ada beberapa hal yang harus saya perbaiki pada sistem joomla nya yaitu pada : template/ component/ module/ plugin, terutama module karena seringkali penyebab error ini adalah pada module-module tertentu.
Ada baiknya sebelum masalah seperti ini terjadi, admin melakukan cek berkala pada module-module yang terpasang jadi ada semacam tindakan antisipasi/ preventive maintenance [ PM ]. Cara melihat module-module yang bermasalah bisa di bagian Control Panel > Extension Manager > Manage.
Lihat gambar.
Di bagian manage ini akan terlihat bila ada module-module yang bermasalah, pilih dan di disable dahulu agar tidak menyebabkan masalah baru pada website, kemudian kita cek apa masalah pada module tsb, bisa juga kita uninstall ( simple fix ) saja lalu kita gantikan dengan module lain yang serupa ( similiar ).
Namun, apabila sudah kejadian dan bertemu dengan masalah Jos_Session seperti tsb diatas maka database nya ada yang rusak ( error ), ini bisa kita lihat dengan login ke PhpMyAdmin > Pilih database nya > Check All Table > Check tables having overhead atau Check Table atau Analyze Table, nanti akan kelihatan mana yang bermasalah.
Dalam kasus saya table yang rusak adalah bak_jos_agora_adsense.
Solusi :
- Langkah ke-1. Gunakan user Root, pilih table yang rusak tsb dan lakukan Repair table, coba diperiksa dengan mencoba browsing websitenya jika website sudah dapat diakses normal berarti masalah sudah teratasi.
- Langkah ke-2. Bila ternyata hasilnya Table tsb tidak bisa di perbaiki ( repair ) maka lakukan Drop table.
- Langkah ke-3. Bila langkah ke-2 juga tidak berhasil maka dengan terpaksa lakukan Restore Database lewat PhpMyAdmin dan gunakan backup database yang terakhir lalu lakukan Import, maka masalahnya akan teratasi ( Solved ), bisa diperiksa dengan mencoba browsing websitenya dan seharusnya website sudah dapat diakses normal.
*Untuk Repair table, kalau tidak mengunakan user root misalnya mengunakan user sudoers biasanya tidak akan berhasil.
*Pastikan kepemilikan database adalah mysql:mysql [ group, owner ]
Tips. Setting backup database secara berkala agar ada antisipasi bila harus mengunakan opsi langkah ke-3 diatas yaitu Restore Database. Pada Linux bisa mengunakan bash scripts lalu jalankan backup terjadwal dengan cron, lakukan backup sekaligus untuk dir /var/www/my-web dan berikut database nya yang biasanya di Debian/ Ubuntu terletak di dir /var/lib/mysql.
Lihat gambar.
Letak dir mysql.
Contoh Cron backup.
Contoh hasil backup berkala dengan bash scripts.
Tidak ada komentar:
Posting Komentar