数据库数据迁移常见方式

数据库数据迁移常见方式

数据库数据迁移常见方式

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

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

相关推荐
fen_fen4 小时前
Oracle建表语句示例
数据库·oracle
砚边数影5 小时前
数据可视化入门:Matplotlib 基础语法与折线图绘制
数据库·信息可视化·matplotlib·数据可视化·kingbase·数据库平替用金仓·金仓数据库
orange_tt5 小时前
Djiango配置Celery
数据库·sqlite
云小逸6 小时前
【nmap源码学习】 Nmap网络扫描工具深度解析:从基础参数到核心扫描逻辑
网络·数据库·学习
肉包_5116 小时前
两个数据库互锁,用全局变量互锁会偶发软件卡死
开发语言·数据库·c++
霖霖总总7 小时前
[小技巧64]深入解析 MySQL InnoDB 的 Checkpoint 机制:原理、类型与调优
数据库·mysql
此刻你7 小时前
常用的 SQL 语句
数据库·sql·oracle
それども8 小时前
分库分表的事务问题 - 怎么实现事务
java·数据库·mysql
·云扬·8 小时前
MySQL Binlog 配置指南与核心作用解析
数据库·mysql·adb
天空属于哈夫克39 小时前
Java 版:利用外部群 API 实现自动“技术开课”倒计时提醒
数据库·python·mysql