环境:centos7、tidb3.0
1、下载dumpling 工具
链接: https://pan.baidu.com/s/1u-UV3MSPGBE2JXnExiKAaQ 提取码: c2jk tar -xvf dumpling-nightly-linux-amd64.tar.gz
2、使用dumpling导出sql查询为csv格式
./dumpling -h 172.21.136.198 -P 4000 -u root -p"passwd" -o /tmp/test --filetype csv --sql 'select * from rkw_ezc_prod.wpt_dzxx_dzsxb limit 2' --参数解析 -u root \ --指定用户 -P 4000 \ --指定端口 -h 127.0.0.1 \ --指定ip -o /tmp/test \ -- 用于选择存储导出文件的目录 -r 1000 -- 选项用于指定单个文件的最大记录数(或者说,数据库中的行数) --filetype csv \ -- 导出格式还可以为filetype sql -F $(( 1024 * 1024 * 256 )) --选项用于指定单个文件的最大大小(和 MyDumper 不同,这里的单位是字节) --sql 'select * from `test`.`sbtest1` where id < 100'
3、导出文件在目录/tmp/test
[root@tidb-22 test]# ll --总共两个文件 total 662172 -rwxr-xr-x 1 root root 140 Aug 18 16:10 metadata -rwxr-xr-x 1 root root 678058615 Aug 18 16:10 result.0.csv [root@tidb-22 test]# more metadata --导出数据信息 Started dump at: 2020-08-18 16:09:43 SHOW MASTER STATUS: Log: tidb-binlog Pos: 418837478338461699 Finished dump at: 2020-08-18 16:10:28
4、删除首行的标题行
[root@tidb-22 test]# head -n 1 result.0.csv --首行为标题头进行删除 "DZMC","MLDZID","MPZBX","MPZBY","SFSCFW","XQID","XQMC","JLXDM","JLXMC","ZRQDM","PCSDM","XT_ZXBZ","XT_TIMESTAMP" [root@tidb-22 test]# sed -i '1d' result.0.csv
5、确定csv是否是需要的导入文件,并使用load导入
1、登录数据库 2、导入csv LOAD DATA local infile 'result.0.csv' INTO TABLE rkw_ezc_prod.wpt_dzxx_dzsxb_20200817 FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' ;