在my.cnf内添加以下代码输出err日志信息:
[safe_mysqld]
err-log = /var/log/mysqld.log
pid-file = /var/lib/mysql/localhost.localdomain.pid
在shell中输入/bin/sh /usr/bin/mysqld_safe &
启动mysql,shell输出如下:
110328 11:39:55 mysqld_safe Logging to
'/var/lib/mysql/localhost.localdomain.err'.
110328 11:39:55 mysqld_safe Starting mysqld daemon with databases
from /var/lib/mysql
110328 11:39:57 mysqld_safe mysqld from pid file
/var/lib/mysql/localhost.localdomain.pid ended
查看vi
/var/lib/mysql/localhost.localdomain.err文件,终于发现了错误代码了,如下:
110328 11:26:57 [ERROR] /usr/sbin/mysqld: unknown variable
'default_character_set=utf8'
110328 11:26:57 [ERROR] Aborting
难怪一加上default_character_set选项后,就无法启动,原来mysql5.5将这个参数给去掉了。
google一把,查看官方文档后,发现在新版本中,需要使用character_set_server来代替
default_character_set参数。详细可以参考:http://dev.mysql.com/doc/refman/5.5/en
/server-options.html#option_mysqld_default-character-set,仔细看下这个页面,会发现原来从
mysql5.1后就已经作了修改了。
因此,你要是使用mysql5.1以上版本有乱码问题,不妨试试以上的方法。
在处理解决问题的过程中,google时,发现也有不少我同样的问题的,但是大部分都是mysql5.1以前的版本解决方法。若是使用的mysql5.1以上的新版本的TX,希望以上方法能解决您的问题。Good
Luck。