1. 改造缘由web
(1) 因为历史缘由, 本应该是同一个库的表分布在两个数据库中,须要对这两个库进行合并。sql
(2) 已有的数据库性能没法知足业务的增加须要, 查询卡,慢问题突出。docker
(3) 当前自建Mysql数据库在配置优化、性能监控、负载均衡上缺少成熟的方案和经验, 故借托管到阿里云RDS,有利于数据库的数据安全和服务器稳定。数据库
2. RDS数据库现状分析安全
(1)RDS基本配置服务器
(2)RDS使用状况负载均衡
eunke-db007: 当前只用于作RDS性能测试, 不作生产使用, 故能够释放。性能
eunke-db006: 用于TMS数据库的部分数据存储, CPU, 链接数, 磁盘使用率均较低, 作数据迁移, 释放该服务器。测试
eunke-db005: 深度使用于短信存储、消息存储, 磁盘空间已经接近满, 须要作清理或者扩容。优化
3. 服务器改造方案
(1)新增eunke-db008
服务器编码 | 服务器描述 | 配置描述 | 价格 |
eunke-db008 | 主库-读写 | 8 核 32GB(独享套餐) 最大链接数:5000 ; IOPS:9000 本地SSD:1000G | ¥4900 / 月 |
(2)旧数据库处理:
服务器编码 | 服务器描述 | 处理方案 |
eunke-db007 | RDS性能测试库 | 释放 |
eunke-db006 | TMS主站数据库 | 数据迁移到eunke-db008后释放 |
eunke-db005 | 短信&消息数据库 | 保留, 作历史数据清理 |
eunke-db001 | 自建Mysql主库 | 数据迁移到eunke-db008后释放 |
eunke-db002 | 自建Mysql从库 | 保留,清空数据库, 继续用于新数据库的从库 |
4. 数据迁移方案
(1)新购买eunke-db008成功后, 在eunke-db008中建立数据库hairdonkey,并配置eunke-db002和eunke-db008的主从数据同步关系(参考配置方法:http://www.javashuo.com/article/p-hobyuuyt-mc.html),完成后进入下一步
(2)停服eunke-db001,002,005,006,007,
(a)对于eunke-db001, eunke-db005,eunke-db006,eunke-db007, 拷贝备份文件到eunke-backup-p-01服务器(专用于备份使用)
(b)对于eunke-db002, 无需备份(主库eunke-db001已备份)
完成后进入下一步
(3)在阿里云RDS中建立迁移任务, 界面以下:
建立两个迁移任务,分别将源库 eunke-db001, eunke-db006 两个库的数据迁移到 eunke-db008中, 预计耗时3小时。迁移完成后进入下一步。
(4)修改全部应用服务器(eunke-web, eunke-transaction, eunke-cms等)的数据库链接地址, 指向新的数据库eunke-db008
(5)测试应用是否访问数据是否正常
(6)完毕