Saturday, March 14, 2009

dbmail and database default character set

I migrated my mailserver to another server recently. I installed dbmail from scratch and restored my database into new mysql server. When I started dbmail to connect to the database server, I found out in syslog (see below) that the dbmail-imapd couldn't connect to the server because of the different character set. It's a FATAL error!. I found out that my old database used latin1 as the default character set and dbmail used utf8 as I defaulted in /etc/dbmail.conf. So I just change the default character set of my dbmail database in MySQL to utf8 (see below). This solved the problem.

In syslog before changing the character set:
Mar 14 13:01:54 webmail.fakedomain.com.my dbmail-imapd[13986]: Error:[sql] dbmysql.c,db_mysql_check_collations(+138): collation mismatch, your MySQL configuration specifies a different charset than the data currently in your DBMail database.
Mar 14 13:01:54 webmail.fakedomain.com.my dbmail-imapd[13986]: FATAL:[server] server.c,StartServer(+129): Unable to connect to database.

To change default character set of a dbmail database:
ALTER DATABASE dbmail DEFAULT CHARACTER SET utf8;

In syslog after changing database default character set:
Mar 15 13:20:29 webmail dbmail/imap4d[14107]: Message:[server] pool.c,child_register(+299): register child [14107]
Mar 15 13:20:29 webmail dbmail/imap4d[14109]: Message:[server] pool.c,child_register(+299): register child [14109]
Mar 15 13:20:29 webmail dbmail/imap4d[14111]: Message:[server] pool.c,child_register(+299): register child [14111]
Mar 15 13:20:29 webmail dbmail/imap4d[14113]: Message:[server] pool.c,child_register(+299): register child [14113]
Mar 15 13:20:29 webmail dbmail/imap4d[14101]: Message:[server] pool.c,scoreboard_state(+590): Scoreboard state:children [4/10], spares [4 (2 - 4)]


3 comments:

LinuxMalaysia said...

Aku pun kena perkara ni waktu migrate beberapa site ke version 2.2.10 waktu. Ada 5 sites pakai dbmail aku kena jaga sekarang. Site paling besar 2000 users dan satu site pula dengan data 38GB dan data semakin membesar. Site sendiri aje 45GB size.

Zamri said...

Fuhh. boleh tahan gak besar tu. Kat sini dah cecah 11 GB and growing....
Tempat yg 2000 users tu interesting. Ada apply memcached tak? hehehe..

LinuxMalaysia said...

yang 2000 users ada applied memcached pada Horde IMP. Site ni aje pakai postgres dengan separate server. Harap tak kantoi. Aku tak sabar tunggu 2.4. Memori telan banyak gak sampai swap lebih 50 peratus.