zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

MySQL中文乱码:解决之道(mysql中文显示乱码)

mysql中文 显示 乱码 解决之道
2023-06-13 09:13:31 时间

MySQL中文乱码是一个相对常见的问题,会使得所有的文本数据在显示的时候都乱成了一团糟。为了解决MySQL中文乱码,我们可以采取一些措施解决这个问题:

1.确定MySQL表编码:由于MySQL中文乱码主要是由于表编码与字符编码不一致导致, 因此我们要使用正确的编码,通过如下方式确定表编码:

mysql SHOW TABLE STATUS WHERE Name= table_name

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

| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time |

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

| table_name | MyISAM | 10 | Dynamic | 10000 | 254 | 2516584 | 0 | 65536 | 0 | 100 | 2018-10-01 10:50:37 |

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

1 row in set (0.00 sec)

mysql SHOW CREATE TABLE table_name;

+ + -+

| Table | Create Table |

+ + -+

| table_name | CREATE TABLE `table_name` (

`id` int(11) unsigned NOT NULL AUTO_INCREMENT,

`name` varchar(50) NOT NULL DEFAULT ,

`age` int(11) DEFAULT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=100 DEFAULT CHARSET=utf8 |

+ + -+

1 row in set (0.00 sec)

从上面的查询结果可以看出表编码为utf8,由此说明MySQL表编码应该统一,与字符编码一致。

2.正确设置字符编码:在查看MySQL表编码后,我们开始设置字符编码,有以下几种常用的编码,其中GBK与GB2312是同一种编码:

GBK

GB2312

UTF-8

BIG5

可以通过如下方式设置字符编码:

mysql SET NAMES utf8

Query OK, 0 rows affected (0.00 sec)

另外,我们还可以在my.cnf文件中添加如下配置来指定数据库字符集:

[client]

default-character-set=utf8

[mysqld]

character-set-server=utf8

collation-server=utf8_general_ci

init_connect= SET NAMES utf8

之后,MySQL中文乱码问题就可以解决了。


我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题

本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 MySQL中文乱码:解决之道(mysql中文显示乱码)