mysql 还原 编码问题_mysql的备份和还原的编码问题解决

今天需要从远程服务器down一个uchome的数据库下来,在本地还原。

发现一个很不爽的事情:远程8G,N核的linux机器,备份还原操作顺溜溜的,可是在本地的windows,2G普通PC上,才100M的文件,用uchome自带的分卷备份还原,基本上中间都会断掉,要么提示“执行时间过长”(改成200秒,分卷为20M都不行),要么就是中途白屏。

得了,用mysqldump备份的一个独立文件来运行命令行还原吧。

首先运行还原语句:

mysql -uroot -p123456 mydatabase < d:/backupdatabase.sql

时间缓慢地逝去,一口水喝完,上个厕所,再溜达一下,终于完成了(在远程linux服务器上也就20秒的功夫!)

然后更新缓存,发现数据乱码了,咦,我备份的时候是强制的gbk编码啊!看看备份的语句:

mysqldump -uroot -p123456 –default-character-set=gbk mydatabase > /usr/local/mysql/backup/backup20091026.sql

没错啊!已经设置了默认字符集为gbk了,看来可能是在还原的时候也要设置吧,于是修改还原语句,手工指定字符编码

mysql -uroot -p123456 font –default-character-set=gbk mydatabase < d:/backupdatabase.sql

又是漫长的等待…刷新页面一看,现在乱码解决了。

总结:在不同的操作系统和数据库环境之间备份与还原时,还是两边都强制制定一个字符集最保险。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值