loader

Lagi asik ngoprek, saya mendapatkan laporan dari rekan kerja bahwasanya salah satu server mengalami hang, lalu saya cek beratnya minta ampun.
telusuri satu-satu load tertinggi berada pada mysql, lalu saya cek query mengarah ke eximstats

apa itu eximstats? eximstats berfungsi untuk meng-generate statistik dari log exim
biasanya eximstats ini menjadi crash disebabkan banyaknya pengiriman spam dari server. lalu saya coba lsof.

lsof sendiri berarti List Open File, yang mana lsof berfungsi untuk mengetahui file mana yang terbuka pada suatu proses.

Table eximstats is marked as crashed

lsof -i | grep smtp

lalu hasil dari pengecekan seperti dibawah ini

[email protected] [~]# lsof -i | grep smtp
exim        30461 mailnull   10u  IPv4 1824930315      0t0  TCP server.xxx.net:34524->parked-mtc-a.evip.aol.com:smtp (SYN_SENT)
exim        31865 mailnull    3u  IPv6 1801828064      0t0  TCP *:smtp (LISTEN)
exim        31865 mailnull    4u  IPv4 1801828065      0t0  TCP *:smtp (LISTEN)

lalu bagaimana mengatasi ini?

perlu diingat sekarang kita sedang bermain dengan 2 service (mysql dan exim) yang berjalan pada 1 server yang sama.

hal pertama yang harus kita lakukan adalah mengecek error log dan mendapatkan ip address yang melakukan aktifitas spam untuk diblokir.

setelah itu, baru kita dapat melakukan optimize terhadap server tersebut, caranya adalah

jika anda menggunakan whm/cpanel. silahkan disable eximstats pada whm >> Service Manager

login ke mysql

mysql> use eximstats ;
Database changed
 mysql> show tables ;

lakukan truncate kesemua table eximstats, lalu apa itu truncate?
Pengertian dari truncate Table itu sendiri adalah menghapus semua isi dari suatu table database. lebih spesifik, kita menghapus table seluruh isi dan seluruh strukturnya, dan mengembalikan lagi struktur table tersebut seperti semula.

mysql> truncate table smtp;
mysql> truncate table send; and more

cek hasil truncate table eximstats

[email protected] [~]# mysqlcheck -c eximstats
eximstats.defers OK
eximstats.failures OK
eximstats.sends OK
eximstats.smtp OK
[email protected] [~]#

atau anda dapat mengecek dengan perintah,

[email protected] [~]# myisamchk -r /var/lib/mysql/eximstats/TABLENAME.MYI

opsi -r sendiri berarti recover, untuk perintah lengkapnya myisamchk anda bisa menggunakan perintah

[email protected] [~]# myisamchk --help

lalu restart service mysql and exim

Selamat berexplorasi 🙂

Sekilas tentang penulis, mimin ArieL FX

Seorang Kuli Server & Datacenter, Terkadang Mendadak menjadi "cowok bayaran". Hanya seorang pengembara dilayar "hitam". Contact: Google+, Twitter and Facebook

1 Comment

Leave a Reply

Your email address will not be published. Required fields are marked *

two × one =