5月21日,科技爱好者博客完成了数据库由阿里云RDS到自建数据库服务器的迁移。迁移的原因是RDS到期了,付不起RDS的费用。
不得不说,阿里云RDS数据库服务特别好用,免去了自己搭建数据库的环节,还能够每日自动备份,可以一键还原数据库数据,安全性大大提高。但是,RDS费用较高,就拿目前最低配置来说吧,1 核 1GB、MySQL 5.6、最大连接数:300 IOPS:400,存储容量为10GB的数据库,一年的价格为¥1676.00。如果网站流量比较大,对数据库的要求较高,使用阿里云RDS无疑是很划算的,但是,像科技爱好者博客来说,使用的服务器配置为1核1GB服务器,日常剩余内存为400多MB,并且网站使用了Memcache缓存,所以对数据库服务器的压力不大,可以在网站服务器上部署Mysql服务,这就是科技爱好者博客将数据库由RDS迁移到网站服务器上的最主要原因,次要原因是没钱续费了。
迁移数据库过程:
一、备份RDS数据库中的数据,这里推荐使用逻辑备份,然后将数据库数据下载到本地。
二、将备份数据导入到自建的mysql服务器中。
遇到的问题:
1、无法导入到自建mysql数据库中。
经过检查,发现阿里云RDS使用的mysql版本为5.6,而我自建的数据库版本为5.5,所以发生导入失败的现象。
解决办法:
升级本地mysql数据库版本到5.6 。
2、导入时编码错误。
导入时发生了无法识别字符的问题,经过长时间排查发现,是备份文件的编码问题,导入前需要将编码转换为 UTF-8 without BOM 格式才行,如果只是 UTF-8 编码,则会发生错误。
解决办法:
使用 Notepad++ 将数据库备份文件的编码转换为 UTF-8 without BOM ,再次导入成功!
Convert to utf-8 without BOM 转换过程