不知道是不是版本原因,总之,按照网上说的 ,添加default-character-set=utf8方法最后总是导致fail to start的情况。经过多次折腾与总结,最后,发尝试了一下方法,成功了。但是,具说这个方法只是临时的,每次开启服务都得再操作一遍。方法如下:
中文乱码问题
首先查看相应的字符设置,命令如下
mysql> show variables like 'collation_%';
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.02 sec)
mysql> show variables like 'character_set_%';
+--------------------------+----------------------------+
| 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.02 sec)
如果与上述表不符合,则对应的选项进行设置,如对character_set_database的设置如下
set character_set_database=utf8(注意,不是utf-8而是别名utf8)
大小写问题
mysql在windows下默认区分大小写,但是在liux下区分,要让linux也不区分大小写很简单只要
在/etc/my.cnf 中的[mysqld]后添加添加lower_case_table_names=1,重启MYSQL服务
这样之后,mysql里边的含有大写字母的数据库就进不去了。所以得重新建立数据库