极客小将

您现在的位置是:首页 » python编程资讯

资讯内容

Mysql中乱码怎么处理?

极客小将2020-12-03-
简介mysql中文乱码解决方法:1、我们可以先看看自己的mysql数据库,中文是否乱码。登录数据库,再带的test数据库中,创建一张表,然后插入中文,查询结果。我们可以看到,中文变成了问号。show databases;use test;create table 

RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

mysql中文乱码解决方法:RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

1、我们可以先看看自己的mysql数据库,中文是否乱码。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

登录数据库,再带的test数据库中,创建一张表,然后插入中文,查询结果。我们可以看到,中文变成了问号。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

show databases; use test; create table users(name varchar(50)); insert into users values('张三'); select * from users;

RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

2、我们来查询一下,各个字符相关的变量的值是什么。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

输入RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

SHOW VARIABLES LIKE 'character%';

我们可以看到 character_set_database的值为latin1。大家的值可能不一定一样,总体来说应该不会是都为utf8。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

3、如果有多处不是utf8,我们需要来修改mysql的配置文件my.ini。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

一般位于安装路径根目录,或者安装路径根目录的bin下,或者Linux下/etc/my.cnf。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

4、在my.ini中:RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

搜索到[client],修改或添加default-character-set=utf8;RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

搜索到[mysqld],修改或添加character-set-server=utf8;RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

搜到到[mysql],修改或添加default-character-set=utf8;RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

5、重启mysql数据库。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

Windows下可以运行services.msc,找到mysql服务,重启;RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

Linux下,可以/etc/init.d/mysqld restart;RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

我的是xampp,没有添加服务,直接先点击stop,再start就好了。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

6、查看各变量的值;RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

SHOW VARIABLES LIKE 'character%';

或者RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

status

RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

7、测试修改之后是否仍乱码。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

create database baidujingyan; use baidujingyan; create table users(name varchar(50)); insert into users values('张三'); select * from users;

RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

可以看到,我们的数据库已经能正常显示中文了。RXO少儿编程网-Scratch_Python_教程_免费儿童编程学习平台

预约试听课

已有385人预约都是免费的,你也试试吧...