数据库的导入导出操作

本文详细介绍了MySQL数据库的导入导出操作,包括如何修改默认导入目录,使用LOAD DATA INFILE导入数据,指定字段分隔符,以及ALTER TABLE添加新字段。在数据导出方面,文章讲解了SELECT ... INTO OUTFILE的基本用法,自定义字段和行分隔符,并强调了导出过程中的注意事项。

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

1数据导入:把系统文件的内容存储到数据库服务器的表里

mysql>  show variables    like "secure_file_priv";

//查看导入文件内容时,默认在系统的什么目录下搜索文件

默认目录:/var/lib/mysql-files/

l 修改默认使用目录

# mkdir /myload ; chown mysql /myload

# vim /etc/my.cnf

--->[mysqld]

secure_file_priv="/myload"

# systemctl restart mysqld

l 导入数据命令格式:

mysql> LOAD  DATA   INFILE  "目录/文件名"   INTO  TABLE   .

mysql> LOAD DATA INFILE “ 目录名 文件名”

INTO TABLE 表名

FIELDS TERMINATED BY “ 分隔符”

LINES TERMINATED BY \n;

exp

cp /etc/passwd  /var/lib/mysql-files/  //复制文件到默认目录下

创建表:

mysql> create database userdb;

mysql> create table userdb.user(

-> name char(50),

-> password char(1),

-> uid int(2),

-> gid int(2),

-> comment varchar(100),

-> homedir char(60),

-> shell char(50),

-> index(name)

-> );

导入数据到表里:

mysql>load  data  infile   "/var/lib/mysql-files/passwd"   

into  table    userdb.user   

fields  terminated by ":"    //设置分隔符为

lines  terminated  by   "\n";   //设置换行

往表里添加新字段:

mysql>alter table userdb.user add id int(01) zerofill primary key 

auto_increment first;

mysql> select id ,name,uid from userdb.user limit 3; 

//显示指定字段的前三行

l 注意事项

– 字段分隔符要与文件内的一致

– 指定导入文件的绝对路径

– 导入数据的表字段类型要与文件字段匹配

– 禁用 SElinux

 

2、数据导出:

l 基本用法

– SELECT 查询 .. ..

INTO OUTFILE “ 目录名 文件名”

FIELDS TERMINATED BY “ 分隔符”

LINES TERMINATED BY \n;

exp:

mysql>select * from userdb.user

into outfile “/var/lib/mysql-files/haha.txt”  //目录下不能有 重名的文件

fields terminated by “:”  //自定义字段分隔符

lines terminated by “###”;  //自定义分行符

l  注意事项

– 导出的内容由 SQL 查询语句决定

– 禁用 SElinux

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值