MySQL备份教程(5)表数据的导入与导出

如果仅需要表中的数据而不需要连表结构一起导出的话,推荐使用MySQL自带的into outfile和load data命令来进行表数据的导出和导入。这种导出方式更为高效,但是在进行表数据导出时不包含表结构,所以需要先备份表结构,然后恢复表结构后再进行表数据的导入。

一、into outfile导出表数据

1、导出MySQL表数据示例

mysql > select * from db1.t1 where a>900 into outfile '/tmp/t1.csv';
mysql > select * from school.class into outfile '/data/backup/class.csv';  #导出class表

2、自定义字段分隔符,如果导出的时候定义了分隔符,在导入的时候也同样需要指定分隔符,效果如图 

mysql > select * from school into outfile '/data/backup/school2.txt' fields terminated by '---'

 

二、load data导入表数据示例 

LOAD DATA INFILE '/data/backup/class.csv' INTO TABLE school.class;

三、导出数据注意事项

1、into outfile语句导出的结果只能保存在服务端。如果执行命令的客户端和MySQL服务端不在同一个机器上,那么客户端是不会生成文件的。

2、into outfile受到数据库参数secure_file_priv限制。如果secure_file_priv为empty代表不限制文件保存位置;如果设置为一个路径,则导出文件只能存放于指定目录或它的子目录;如果设置为NULL表示禁止进行select … into outfile操作

3、into outfile命令不会覆盖文件,需要自己确保保存目录下的文件不存在,否则执行语句时就会因为有同名文件的存在而报错

4、导出的文件中的每一行原则上会对应数据库中的每一行数据。但是如果字段中包含换行符,在生成的文本中也会有换行符。不过类似换行符、制表符这类符号,前面都会跟上“\”这个转义符,这样就可以跟字段之间、数据行之间的分隔符区分开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值