mysql 增量数据导出导入

本文介绍了如何在Linux环境下进行MySQL的增量数据导出和导入操作,包括使用SELECT INTO OUTFILE导出数据,以及LOAD DATA INFILE导入数据到表中。重点强调了字符集的匹配、字段分隔符的选择以及在Windows和Linux环境下的差异。同时提到,导出数据时可以使用WHERE子句进行过滤,并且在大量数据导入时,LOAD DATA INFILE通常比INSERT更快。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mysql 增量数据导出导入
注:mysql 是安装在linux
1。导出
select *
into OUTFILE 'template_template.txt'
CHARACTER set utf8
FIELDS TERMINATED by '~'
from template_template
where templatename like '%安卓%'

outfile 默认是跟数据库所在路径,例:/var/lib/mysql/template/
          也可以绝对路径,例:/home/myuser/
          注意用户要有读写文件的权限

2.导入
  在window机器
  load data local  infile 'c:/data/template_template.txt' into table template_template
  character set utf8
  fields terminated by '~';
 
  注意:是/,而不是\
 
  在linux机器
  load data infile '/var/lib/mysql/template/template_template.txt' into table template_template
  character set utf8
  fields terminated by '~';
 
  区别:在window机器多了local这个关键字
   
3.其他注意点:
   1.字符集要跟数据库,表的字符集一致,建议使用utf8
   2.fields terminated by '~' 表示各个字段的数据以~隔个,也可以用其他特殊字符
   3.导出的数据在导入时,表结构一定要一致
   4.导出数据时,可以用where,子查询等
   
4.扩展
   在做大数据量入库时,程序可先生成数据文件,然后再用load data方式入库。
   没有亲自测试load data与insert的性能差距,估计load data的速度应该会比insert快几倍
   后续再补充其他优化方法。
 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值