最近公司业务升级,为了增加安全性和稳定性,决定将本地机房内的带公网ip的自建mysql服务器,统一迁移至阿里云RDS数据库服务器上,在迁移过成功也遇到了一些小问题,现在把这些问题的处理方式总结一下
1.在数据库迁移前,需要开启自建服务器上mysql的binlog功能,binlog 就是binary log,二进制日志文件,这个文件记录了mysql所有的dml操作。通过binlog日志我们可以做数据恢复,做主住复制和主从复制等等。对于开发者可能对binlog并不怎么关注,但是对于运维或者架构人员来讲是非常重要的。
首先找到mysql的配置文件,我的配置文件位置在/etc/my.cnf
打开配置文件后,在配置文件中添加下属代码
#用来开启binlog服务
log-bin=on
#binlog模式,详细记录
binlog_format=row
#服务器id,这里是在多台服务器是,区分主从关系,默认为1,可以根据自己服务器ip修改
server_id=12
2.在迁移前的服务器配置中,如果实例原本就在阿里云上,就可以直接选择分区,如果不在阿里云上,就要选择带外网ip的自建服务器,并且在服务器的防火墙中加入阿里云提供的外网ip段。
然后就可以进行数据的迁移了,迁移过程根据原数据库中数据结构和数据量的大小,时间也有所不同,总之,比原本的保存数据库结构和数据sql,再在另一台服务器重新执行一遍,要快很多,并且不会存在乱码等问题