Mengatasi Zimbra Mailbox Stopped: mysql.server is not running
Saat melakukan maintenance atau troubleshooting pada Zimbra Collaboration, terkadang administrator menemukan kondisi di mana service Mailbox tidak dapat dijalankan dan beberapa web service Zimbra ikut berhenti. Salah satu penyebab yang cukup sering terjadi adalah permission file konfigurasi my.cnf yang berubah menjadi world-writable (777) sehingga diabaikan oleh MariaDB.
Saat melakukan pengecekan status service Zimbra pada CLI dengan perintah:
$ zmcontrol status
Terdapat informasi adanya error mysql.server tidak dapat berjalan:
amavis Running
antispam Running
antivirus Running
ldap Running
logger Running
mailbox Stopped
mysql.server is not running.
memcached Running
mta Running
opendkim Running
proxy Running
service webapp Stopped
mysql.server is not running.
snmp Running
spell Running
stats Stopped
zimbra webapp Stopped
mysql.server is not running.
zimbraAdmin webapp Stopped
mysql.server is not running.
zimlet webapp Stopped
mysql.server is not running.
zmconfigd Running
Ketika mencoba menjalankan service database mysql menggunakan perintah berikut mysql.server start terdapat error seperti berikut:
$ mysql.server start
Starting mysqld...Warning: World-writable config file '/opt/zimbra/conf/my.cnf' is ignored
Warning: World-writable config file '/opt/zimbra/conf/my.cnf' is ignored
Warning: World-writable config file '/opt/zimbra/conf/my.cnf' is ignored
Warning: World-writable config file '/opt/zimbra/conf/my.cnf' is ignored
Warning: World-writable config file '/opt/zimbra/conf/my.cnf' is ignored
Warning: World-writable config file '/opt/zimbra/conf/my.cnf' is ignored
Error tersebut menunjukkan bahwa pada file konfigurasi my.cnf memiliki permission yang terlalu terbuka, sehingga error tersebut menyebabkan dianggap tidak aman oleh MariaDB.
Lakukan pengecekan permission file tersebut apakah memang ada kesalahan, dengan perintah berikut:
# ls -l /opt/zimbra/conf/my.cnf
Apabila output mengeluarkan hasil seperti berikut, artinya file konfigurasi my.cnf memiliki permission 777 dan akan diabaikan saat akan menjalankan database mysql.
-rwxrwxrwx 1 zimbra zimbra ... my.cnf
Langkah Perbaikan
Sebelum menerapkan perubahan konfigurasi pada file tersebut, pastikan anda sudah mendapat akses ke root agar memiliki full akses dan tidak ada kendala saat melakukan proses perubahan.
Langkah 1: Perbaiki permission file
Masuk sebagai user root, jalankan perintah berikut untuk mengubah permission file my.cnf.
# chmod 640 /opt/zimbra/conf/my.cnf
# chown zimbra:zimbra /opt/zimbra/conf/my.cnf
Lakukan verifikasi kembali untuk memastikan apakah berhasil menerapkan perubahan.
# ls -l /opt/zimbra/conf/my.cnf
Pastikan permission menjadi seperti berikut:
-rw-r----- 1 zimbra zimbra ... my.cnf
Langkah 2: Sebagai user Zimbra jalankan kembali database mysql MariaDB
Masuk sebagai user Zimbra.
# su - zimbra
Jalankan perintah berikut:
$ mysql.server start
Pastikan Database MariaDB telah running dan semua service Zimbra running, dengan perintah:
$ mysql.server status
mysql is running with pid 51202
$ zmcontrol status
Host mail.zimbratwo.com
amavis Running
antispam Running
antivirus Running
ldap Running
logger Running
mailbox Running
memcached Running
mta Running
opendkim Running
proxy Running
service webapp Running
snmp Running
spell Running
stats Running
zimbra webapp Running
zimbraAdmin webapp Running
zimlet webapp Running
zmconfigd Running
Apabila semua service Zimbra dan MariaDB berhasil running, artinya proses troubleshooting yang kita lakukan telah berhasil. Server Zimbra saat ini normal kembali dan dapat diakses.
ANALISIS PENYEBAB
Permission file konfigurasi dapat berubah karena beberapa faktor, di antaranya:
- Melakukan perubahan permission secara manual menggunakan perintah
chmod. - Menjalankan perintah
chmod -Rpada direktori/opt/zimbra. - Proses restore atau migrasi server yang mengubah permission file.
- Kesalahan saat melakukan penyalinan file konfigurasi dari server lain.
Oleh karena itu, sangat disarankan untuk selalu melakukan pengecekan permission setelah proses migrasi maupun restore sistem.
KESIMPULAN
Permission file konfigurasi merupakan salah satu aspek penting dalam keamanan sistem Linux maupun aplikasi Zimbra. Apabila file /opt/zimbra/conf/my.cnf memiliki permission 777 (world-writable), MariaDB akan mengabaikan file konfigurasi tersebut sehingga service Mailbox dan beberapa service web Zimbra tidak dapat dijalankan.
Dengan mengembalikan permission menjadi 640 serta memastikan owner file adalah zimbra:zimbra, service database dapat kembali berjalan normal dan seluruh service Zimbra akan aktif kembali.
Penerapan permission yang sesuai juga dapat mencegah terjadinya gangguan serupa pada proses maintenance maupun migrasi server di kemudian hari.
