Ubuntu下进入mysql,在终端下不能输入中文,直接是不能键入

1.问题

MySQL终端状态下不能输入中文,,一开始是 中文的输入报错,按照网上的说法给了配置文件之后,中文居然不能输入了,

2.问题根源 

上网看了太多的东西发现都不是适合自己的,不论是把LANG改成en_US.UTF-8 还是将字符配置文件的[mysql] 下的 default-character-set=utf8改成GBK ,都没用,我的mysql配置文件的更改如下:

apt-get install 安装的,不是源码包安装的mysql

 

1 修改mysql的配置文件

 

/etc/mysql/conf.d/mysql.cnf

 

在[mysql]的下方加入如下语句:(注:这个文件下没有配置,只有【mysql】)

 

no-auto-rehash

default-character-set=utf8

 

/etc/mysql/mysql.conf.d/mysqld.cnf 

 

在[mysqld]下加入

 

socket = /var/run/mysqld/mysqld.sock

port = 3306

character-set-server=utf8 (这里是server,之前有的版本是set)

 

重启mysql: sudo /etc/init.d/mysql restart

 

查看字符集

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

mysql> show variables like '%char%';

+--------------------------+----------------------------+

| 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)

 

 

 设置之后如果之前的数据库已经创建了,只能删除重新创建了。

 

首先我不是说这个文章不好,而是他其中的有一个地方不适合我的配置.

3.解决

将上述中的一个配置文件的更改去掉, 我就可以在mysql终端下输入中文了.

no-auto-rehash 去掉

default-character-set=utf8 去掉。
希望可以给各位碰到这个问题的朋友一个新的处理方法.当然不一定适合,可以去export LANG 或者尝试其他的,仅仅在这表示我遇到的问题的解决.

 

你可能感兴趣的:(mysql,problem)