数据库中文显示不了,怎么办


数据库中文显示必须每个环节的字符集都支持中文,且一致。从本地SecureCRT到数据库总共经历了多少环节呢?

1、本机到虚拟window开发机    (由于windows都没问题);

2、虚拟window开发机到Linux虚拟机,走的是SecureCRT

设置: 选项->会话选项->外观->字符集编码->UTF-8

3、从Linux虚拟机到DB的跳板机,走的是SSH

设置:Linux机的locale得支持中文,比如zh-CN.UTF-8;但是由于机器的全局配置是en_US.UTF-8的。我们只能修改user级别的profile,因此编辑:

#vi ~/.bash_profile            (隐藏文件)

添加两行:

export LC_CTYPE=zh_CN.UTF-8

export LANG=zh_CN.UTF-8

 

#source ~/.bash_profile 立即生效

 

4、从跳板机到MYSQL SERVER,走的是mysql客户端

数据从MYSQL Server传递到mysql客户端,mysql客户端的编码得一致。

Mysql> set names utf8

 

查看MYSQL 的字符集:

mysql> show variables like '%char%';

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

| Variable_name            | Value                                   |

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

| character_set_client     | utf8                                    |

| character_set_connection | utf8                                    |

| character_set_database   | gbk                                     |

| character_set_filesystem | binary                                  |

| character_set_results    | utf8                                    |

| character_set_server     | gbk                                     |

| character_set_system     | utf8                                    |

| character_sets_dir       | /home/mysql/mysql/share/mysql/charsets/ |

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

8 rows in set (0.00 sec)

你可能感兴趣的:(mysql,中文编码)