现在使用传统的方式来将一个 DB 同步到另一个新的 DB 中,
导出:mysqldump,
导入:mysql source <sql_file>
由于 DB 比较大( 30GB ),无论导出,还是导入,都相当慢。
有没有其他更好的方式来做这个工作?
不同的云平台的 RDS,MySQL 5.7
1
airfling 2019-10-18 14:37:58 +08:00
物理 copy 到移动硬盘,然后转移到新的机器上
|
2
airfling 2019-10-18 14:38:27 +08:00
30g 你只能找服务商了
|
3
rykinia 2019-10-18 14:49:29 +08:00
30g 而已,dump 下来压缩下,用一晚拖下来,再用一晚传到新服务器上
|
4
ADME 2019-10-18 14:57:17 +08:00
用工具直接同步过去呗,不过 30g 不知道能不能行
|
5
ys521 2019-10-18 14:59:50 +08:00
我都是物理操作 捂脸
|
6
xmlf 2019-10-18 15:01:42 +08:00 via Android
同问,楼主是问快速同步::
|
7
PainSwim 2019-10-18 15:04:27 +08:00
我司是使用 Kettle 工具的。方便,效率还行,同步差不多有每秒 1000 条数据。
|
8
yzongyue 2019-10-18 15:12:56 +08:00
用云平台提供的数据迁移工具? 不知道速度如何
|
9
clearCode0915 2019-10-18 15:14:55 +08:00
不知道 Percona Toolkit 能不能满足你的需求
|
10
Myth666 2019-10-18 15:15:52 +08:00
rsync 把这个文件夹同步到 新的机器上去
|
11
zealinux OP @PainSwim
你 Kettle 是不是可以能跑在无 GUI 的 server 上, 如果启动 Kettle 在本地开发机器上的话,估计会更慢的吧。 --- 我 Mac 上还没有启动成功过 Kettle 这个传说过的 ETL 工具。 |
12
reddean666 2019-10-18 15:20:22 +08:00
写程序导? 按时间或 id 将数据分割成小块,再分治?
|
14
dcsite 2019-10-18 15:56:23 +08:00
阿里云 RDS 数据迁移,全自动,省心
|
15
neko77 2019-10-18 15:59:31 +08:00
阿里云 dts 服务 或者 datax 自己撸配置文件
|
16
ackermanHu 2019-10-18 17:32:55 +08:00
datax
|
17
CivAx 2019-10-18 19:57:13 +08:00
* 先用 innobackupex 全量打包
* 然后再用 innobackupex 全量恢复 我们 71 GB 的数据,打包后约 12 GB。下载备份 6 分钟,解包 10 分钟,回拷 16 分钟,半小时左右数据库恢复完。 如果你是阿里云的 RDS,那就直接下载备份包。 如果不是的话,那就先下载到 RDS 所在的云服务商的内网的服务器,然后再用 lz4 配 tar 光速拉下来,带宽直接跑满。 |
18
mattx 2019-10-22 10:21:10 +08:00
如果 mysql 版本相同的话,可以用 xtrabackup 进行物理备份
|