MySQL实验中不同字符集数据库迁移步骤是怎样的

MySQL实验中不同字符集数据库迁移步骤是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

今天主要介绍下mysqldump怎么迁移编码不同的数据库,这里用一个实验来演示一下。

1. 创建测试数据库

create database t1 default character set gbk collate gbk_chinese_ci; create database t2 default character set utf8 collate utf8_general_ci; use t1; create table t11(id int,name varchar(10),primary key(id)) engine=innodb default charset=utf8; create table t12(id int,name varchar(10),primary key(id)) engine=innodb default charset=gb2312; use t2; create table t21(id int,name varchar(10),primary key(id)) engine=innodb default charset=utf8; create table t22(id int,name varchar(10),primary key(id)) engine=innodb default charset=gb2312;

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第1张

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第2张

2. 模拟数据

use t1; insert into t11 values(1,'hwb'); insert into t11 values(2,'hwb2'); insert into t12 values(1,'hwb'); insert into t12 values(2,'hwb2');  use t2; insert into t21 values(1,'hwb'); insert into t21 values(2,'hwb2'); insert into t22 values(1,'hwb'); insert into t22 values(2,'hwb2');

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第3张

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第4张

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第5张

3. 导出数据库

mysqldump -u root -p t1 > /tmp/t1_old.sql mysqldump -u root -p t2 > /tmp/t2_old.sql

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第6张

4. 转换编码

如果你是想转成utf-8,就在t参数后面写上。以前字符集是gb2312就在-f参数后面写上。

iconv -t utf-8 -f gb2312 -c /tmp/t1_old.sql > /tmp/t1_new_utf8.sql iconv -t utf-8 -f gb2312 -c /tmp/t2_old.sql > /tmp/t2_new_utf8.sql

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第7张

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第8张

5. 修改 /tmp/new_utf8.sql文件的字符编码

sed 's/CHARSET=gbk/CHARSET=utf8/g' /tmp/t1_new_utf8.sql > /tmp/t1_new_utf8_new.sql sed 's/CHARSET=gb2312/CHARSET=utf8/g' /tmp/t1_new_utf8_new.sql > /tmp/t1_new_utf8_new2.sql  sed 's/CHARSET=gbk/CHARSET=utf8/g' /tmp/t2_new_utf8.sql > /tmp/t2_new_utf8_new.sql sed 's/CHARSET=gb2312/CHARSET=utf8/g' /tmp/t2_new_utf8_new.sql > /tmp/t2_new_utf8_new2.sql

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第9张

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第10张

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第11张

6. 建新库

create database t3 default character set utf8 collate utf8_general_ci; create database t4 default character set utf8 collate utf8_general_ci;

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第12张

7. 导入

use t3; source /tmp/t1_new_utf8_new2.sql; use t4; source /tmp/t2_new_utf8_new2.sql;

8. 测试

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第13张

MySQL实验中不同字符集数据库迁移步骤是怎样的  mysql 第14张

到这里就完成了数据库及表不同字符集的迁移测试。

关于MySQL实验中不同字符集数据库迁移步骤是怎样的问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注蜗牛博客行业资讯频道了解更多相关知识。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论电报频道链接