本例子环境为centos 7.4 yum安装 mariadb 5.5.56mysql
环境准备:建立latin1编码的库,表,数据sql
mysql --default-character-set=latin1
centos
show variables like 'char%';ide
create database latin;编码
show create database latin;3d
use latinserver
create table student (id int,name varchar(10),age int,class varchar(20));blog
insert into student values (1,'张三',18,'数学');图片
insert into student values (2,'李四',28,'语文');get
show create table student;
select * from student;
正式开始:
1备份数据
mysqldump --default-character-set=latin1 latin >latin.sql
2修改服务端配置文件
vi /etc/my.cnf 在[mysqld]段添加
character_set_server = utf8
3从新启动服务生效
systemctl stop mariadb
systemctl start mariadb
4更改字符编码为utf8
sed -n s/latin1/utf8/gp latin.sql
sed -i s/latin1/utf8/g latin.sql
5建立新库导入数据
mysql --default-character-set=utf8
show variables like 'char%';
create database utf8;
show create database utf8;
use utf8
source /root/latin.sql
6验证
select * from student;