mysql乱码解决方案

本人linux系统使用mysql作为数据库时,插入中文后乱码,中文显示“????????”(就是只是问号)

进入数据,查看编码配置

show varibales like “%char%”

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

 

连接时使用utf8,但数据库创建默认位latin1

server也是用latin1,latin1是ISO-8859-1 的别名,有些系统又名为Latin-1,总之是不支持我们伟大的母语

linux 系统默认编码为utf-8,client当然为utf-8.并且utf-8 基本兼容世界所有字符,强烈建议使用utf-8

 

看看mysql的配置文件

cd /etc/mysql

发现配置文件my.cnf

vi 一下它,mysql server5.5版本默认配置如下

 

你可能感兴趣的:(数据库相关,数据库,mysql)