数据库数据迁移常见方式

数据库数据迁移常见方式

数据库数据迁移常见方式

1、通过sql

批量导入sql

java 复制代码
insert into tableName select * 

2、通过数据迁移工具

在数据库里面可以看到有navicat里面有数据转移工具可以使用。

3、云服务进行数据迁移

随着云服务越来越普及,好多工作可以在云服务上进行,十分的方便,我最近进行数据规划,容灾,迁移都在使用一款云服务,华为云的DRS 服务----数据转移。

什么是DRS服务

DRS服务是数据迁移服务,可以把不同库的数据进行转移,譬如把A库的表迁移到B库里面。也可以把A库进行迁移,整体的迁移到另一个库里面。

如何使用DRS服务

官网链接 :https://www.huaweicloud.com/product/drs.html

1、选择一个站点

这个可以选一个你们目标数据库所在的站点。

2、创建DRS任务。

选择需要转移的库就可以进行数据转移了。
重点是:
1,全量加增量转移数据
2,全量转移

选择完了之后只需要选择对应的库就可以了。

DRS云服务可以干什么

1、进行数据库转移

当业务上需要多个库和一的时候,使用DRS任务把不同的数据库转移到同一个库里面,然后把微服务部署到新的数据库里面,微服务部署完成后,数据库数据完整,可以达到不间断部署。

2、进行表转移

当公司大的时候,譬如我现在所在的公司,几千个部门合作,如果接入外部域数据,那么需要的就是这个工具,实时的同步外部数据,延迟几乎没有。

3、进行数据库表的监测

假设数据库里面有很多表,表里面数据很多,那么会用到redis缓存来提升查询速度,一般是业务来查询,第一次查到数据,返回并且存到redis里面,当数据发生改变时,去删除或者更新数据。

那么如果监控这个数据发送改变的情况,传统意义上mysql数据变更捕获有很多方式,比如使用开源工具canal,debezium,maxwell等等,连接mysql数据源,实现获取binlog日志。

我们还可以使用DRS任务,还需要kafka

首先建立一个kafka,创建一个topic用来接收数据,然后创建DRS出云任务,对接mysql数据库,DRS出云任务选择全量加增量方式,选择要监控的表,当有数据变化的时候,使用DRS任务就可以把变化的数据发送到kafka里面。这样kafka里面有记录的事件。

然后我们代码订阅kafka的事件,就可以做到删除或者更新缓存的操作,相对比以前,只需要加上两个云服务,可以监控很多张表,省去了很多代码,并且更加解耦,稳定。(DRS本质上也是监控的MySQL的binlog日志的)

4、用于容灾搭建

一般来说我们数据库搭建为一主一从一只读的集群。主库管读写,从库,只读库管查询,作为容灾,会定期的把主库的数据同步到容灾环境去,那么如何可以实时的同步过去呢,当主库宕机,容灾库可以直接切换过去就是最好的容灾方案。

巧了DRS就有这个容灾方案,选择里面的容灾,就可以建立容灾同步,而且如果容灾库一开始么有数据,第一次建立容灾会把所有数据全部同步过去,如果数据库宕机就使用这个就可以切换过去,但是要提前做容灾处理。

这个云服务你就用去吧,特别好用,一用一个不吱声

相关推荐
White_Mountain9 分钟前
在Ubuntu中配置mysql,并允许外部访问数据库
数据库·mysql·ubuntu
Code apprenticeship10 分钟前
怎么利用Redis实现延时队列?
数据库·redis·缓存
百度智能云技术站13 分钟前
广告投放系统成本降低 70%+,基于 Redis 容量型数据库 PegaDB 的方案设计和业务实践
数据库·redis·oracle
装不满的克莱因瓶16 分钟前
【Redis经典面试题六】Redis的持久化机制是怎样的?
java·数据库·redis·持久化·aof·rdb
梦想平凡2 小时前
PHP 微信棋牌开发全解析:高级教程
android·数据库·oracle
TianyaOAO2 小时前
mysql的事务控制和数据库的备份和恢复
数据库·mysql
Ewen Seong2 小时前
mysql系列5—Innodb的缓存
数据库·mysql·缓存
码农老起3 小时前
企业如何通过TDSQL实现高效数据库迁移与性能优化
数据库·性能优化
夏木~4 小时前
Oracle 中什么情况下 可以使用 EXISTS 替代 IN 提高查询效率
数据库·oracle
W21554 小时前
Liunx下MySQL:表的约束
数据库·mysql