navicat for mysql中不能显示中文的解决方法?

发布网友

我来回答

2个回答

懂视网


     SET character_set_results = utf8;
     SET character_set_connection = utf8;

mysql> set names utf8;
Query OK, 0 rows affected (0.00 sec)


8 查看是否成功修改了

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    | gbk                | 
| character_set_system    | utf8                | 
| character_sets_dir     | /usr/share/mysql/charsets/ | 
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
9 再次查询表luzhi的数据,发现可以正常显示
mysql> select * from luzhi;
+------+---------+
| id  | name   |
+------+---------+
|   2 | 你好   | 
|   4 | 甪直   | 
+------+---------+
4 rows in set (0.01 sec)

10 上面的方法只是临时的更改,当退出mysql再次进入的就会失效了。

永久更改:

#vim /etc/my.cnf
    
[client]
#password       = your_password
port            = 3306
socket          = /var/lib/mysql/mysql.sock
default-character-set=gbk  #这里可以设置你所需要定义的编码 utf8
# Here follows entries for some specific programs
# The MySQL server
[mysqld]
port            = 3306
socket          = /var/lib/mysql/mysql.sock
datadir = /home/rzrk/mysql
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
default-character-set=gbk  #这里可以设置你所需要定义的编码 utf8


修改完成后必须重启mysql才能生效

#service mysql restart 
#mysql uroot -p 
> show variables like "character%";


本文出自 “天道酬勤” 博客,请务必保留此出处http://luzhi1024.blog.51cto.com/8845546/1651596

解决mysql中无法显示中文的一个实例

标签:version   current   tables   数据库   mysql utf8   

热心网友

navicat for mysql不能显示中文的方法如下:

1.首先修改mysql字符集,这个有说改配置文件,打开my.ini配置文件(MySQL的配置文件),加入:character_set_server = utf8

2.用的是命令行方式修改,如下:进入cmd命令,进入mysql的bin目录下,启动mysql;使用命令:show VARIABLES like 'character%';  查看当前字符集,发现都是gbk等字符集,这时使用如下命令改变字符集:

mysql> SET character_set_client = utf8 ;  

mysql> SET character_set_connection = utf8 ;   

mysql> SET character_set_database = utf8 ;   

mysql> SET character_set_results = utf8 ;    

mysql> SET character_set_server = utf8 ;   

3.无论使用修改配置文件还是使用命令行修改字符集,修改完成后,需要重启mysql服务,这时,再用命令show VARIABLES like 'character%';  查看当前字符集,已经生效。

4.由于,已经建立了数据库,这时还需要在Navicat for mysql中,将数据库的字符集也改掉。右键数据库,选择数据库属性,如图。 进入后,修改字符集为utf8

5.之后,还需要对每个表点击右键,选择 涉及表 ;然后在“选项”中,将表的字符集进行修改。

6.还需要将varchar类型 字段的的字符集也要改掉,进入设计表中,点中某字段,发现,数据类型果然还是Latin1,那么好,一个一个改过来即可。当然,也可以使用命令的方式修改,命令如下:ALTER TABLE  表名 CHANGE  列名  列名  VARCHAR( 100 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;

ps:可以先尝试修改字符,如果修改字符依旧无效可以使用上述的办法。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com