ubuntu下修改mysql默认字符编码出现的Job failed to start解决办法
? ? ? ? 前几天卸掉了用了好多年的Windows,安装了Ubuntu12.04,就开始各种搭环境。今天装好了MySQL5.5.22,正用着爽呢,突然发现里面的中文全部变成了乱码,于是便试着去修改配置,经查询
? ? ? ? 可以通过以下步骤修改:
$sudo gedit /etc/mysql/my.cnf
? ? ? ? 在里面
[client]下添加:
default-character-set=utf8
[mysqld]下添加:
default-character-set=utf8
? ? ? ? 然后就保存退出跟着大部队开始
$sudo service mysql restart
? ? ? ? 结果意外的发现跟大部队不一样,居然出现了Job failed to start
?
-----------------------------------------------------------------------------------------------
?
? ? ? ? 后来去看同学的配置,发现跟我的一模一样,但是他的能够正常运行,之后看到他的MySQL是5.2的,才发现可能是因为版本升级的原因,对于配置文件内的数据更改的方式不一样。于是果断上网查5.5以后的版本对字符编码方式修改的办法,才发现原来在[mysqld]下的修改已经发生了变化,正确方式如下:
[mysqld]下添加的应该为:
character-set-server=utf8
collation-server=utf8_general_ci
? ? ? ? 保存退出
$sudo service mysql restart
? ? ? ? 果然成功重启
$mysql
? ? ? ? ?之后出现
mysql>
? ? ? ? ?输入show variables like 'character%';
? ? ? ? ?输出如下:
?
+-----------------------------------+-----------------------------------+
| Variable_name ? ? ? ? ? ? ? ? ? ?| Value ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|
+-----------------------------------+-----------------------------------+
| character_set_client ? ? ? ? ? | utf8 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| character_set_connection | utf8 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| character_set_database ? ?| utf8 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| character_set_filesystem ? | binary ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|
| character_set_results ? ? ? ? | utf8 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| character_set_server ? ? ? ? ?| utf8 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| character_set_system ? ? ? ? | utf8 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| character_sets_dir ? ? ? ? ? ? ? | /usr/share/mysql/charsets/ |
+------------------------------------+-----------------------------------+
8 rows in set (0.00 sec)
?
?
? ? ? ? ? 成功!
? ? ? ? ? 个人记性差,写博记下免得下次改配置耽误时间。同时供碰到同样问题的同学们参考,如果高手发现其中纰漏,还请指出并轻拍。
?
? ? ? ? ? 转载请注明:http://waynehu16.iteye.com/blog/1557777