mysql tab导入导出_MySQL-数据的导入和导出

一、导入数据

把存在系统文件中的数据,导入到数据库中

以默认分隔符导入

1.创建源文件

导入数据时默认的字段分隔符是\t,默认行分隔符是\n

[root@ULA ~]# vim /opt/test.txt

1root //以tab做分隔符

2bin

3adm

1000user

2.创建表

MariaDB [test]> create table test(

-> uid int,

->username char(20));

Query OK, 0 rows affected (0.04 sec)

3.导入数据 记录

语法:load data infile 文件名 into table 表名;

MariaDB [test]> load data infile "/opt/test.txt" into table test;

MariaDB [test]> select * from test;

+------+----------+

| uid | username |

+------+----------+

| 1 | root |

| 2 | bin |

| 3 | adm |

| 1000 | user |

+------+----------+

总结:

1)文件不要放在/tmp和/root家目录下,mysql读不到

2)mysql用户对要导入的文件至少要有读的权限

3)文件用双引号或单引号引起来

手动指定分隔符

1.创建源文件

# head /etc/passwd > /opt/pass.txt

2.创建表

MariaDB [test]> create table pass (

-> username char(20),

-> password char(1),

-> uid int(10),

-> gid int(10),

-> msinfo char(50),

-> home char(30),

-> shell char(30));

3.导入数据 记录

语法:load data infile 文件名 into table 表名 fields terminated by '分隔符';

MariaDB [test]> load data infile '/opt/pass.txt' into table pass fields terminated by ':';

MariaDB [test]> select * from pass;

二、导出数据

将数据库中的数据导出到系统文件中

MariaDB [test]> select * from pass into outfile "/opt/passout";

ERROR 1 (HY000): Can't create/write to file '/opt/passout' (Errcode: 13)

[root@ULA tmp]# chmod 777 /opt

MariaDB [test]> select * from pass into outfile "/opt/passout";

[root@ULA tmp]# cat /opt/passout

总结:

1)导出的文件一定是不存在的

2)mysql用户对目录要有读写权限

3)导出的文件默认以\t为字段分隔符,\n为行分隔符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值