视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Linux下Msql的文件导入导出问题_MySQL
2020-11-09 19:33:41 责编:小采
文档
 其实我也是刚开始接触 linux,也刚开始自学MySql,这篇博客算是我的体会总结吧,拿出来和大家分享!有什么不对的还请大神指教。

一、导入数据

1、向mysql中导入.txt文档

1.1、mysqlimport命令

命令格式:mysqlimport -uuser_name -ppassword [-d/f等参数表] dbname filename.txt;

示例操作如下图:

说明:

-uuser_name:登陆的用户名

-ppassword:密码

dbname:要接收导入数据的数据库

filename.txt:用于导入的源文件

注意: -uuser_name来说,-u与user_name间可有空格也可没空格。但对-ppassword来说,-p与password间一定没有空格。

文档格式:文档与表格应是意义对应的,如下图。

注意:1.txt文档中字段之间默认的分隔符是一个Tab健。

2.txt 文档名和数据表表名要一样。

3.txt文档要存在导入目的库所在目录下,一般为/var/lib/mysql/db_name。如我这里是要导入到test库里,就是/var/lib/mysql/test。如下截图是将.txt文档复制到所虚目录下。

参数表

-d

插入数据之前删除表数据

-f

插入过程中如遇错误,强行插入数据

-i

跳过那些有相同唯一关键字的记录

-r

替代那些有相同唯一关键字的记录

--fields-terminated-by=,

","数据分割符(默认是Tab跳格)


结果展示:



1.2、load命令


命令格式:load data infile 'filename.txt' into table table_name;

示例及结果:

说明:

1、只能导入.txt文档,且文档名与表名一致

2、和mysqlimport命令一样,文档与库要在同一目录下


2、向mysql中导入.sql文档

2.1、source命令

命令格式:source data.sql;

示例及结果:

说明:

1、.sql文件应该放在用户目录下(如我这里是jhp1900用户,就需放在/home/jhp1900目录下)

2、文件名可与表名不同(下条给出解释)

3、文件内容其实就是一条一条的插入语句没条语句都有指明插入到哪一个表中,所以可与文件名不同,文件格式如下


2.2、直接导入

命令格式:mysql -uroot -ppassword dbname < /.../.../filename.sql;

示例及结果:

说明:这种方法可以不必拘泥于文件存储位子,因为导入命令里会指明文件所在。


二、导出数据

导出数据则会相对比较简单,这里总结了两个导出命令。

1、导出为.sql格式

命令格式:mysqldump -uroot -p... dbname > filename.sql

示例及结果:

然后在你的用户主目录下就多了个data1.sql的文件。

说明:

1、这条命令会导出所指库内的所有表格

2、导出后的文件存在用户主目录下

3、该方法也可导出为.txt格式,但这样会是单向的,这样的.txt文档不可往回导入(文档内容格式不匹配)

2、导出为.txt格式

命令格式:select * from table_name info outfile 'filename.txt';

示例及结果:


说明:

1、默认导出目录是库所在的目录

2、同上一条的说明3

下载本文
显示全文
专题