mysql导出导入数据

使用sql语句导出数据:

导出时如果不写绝对路径,会提示The MySQL server is running with the --secure-file-priv option so it cannot execute this statement。

使用 show variables like "%secure%" 查看secure_file_priv 设置的路径,导出时必须是这个路径才能导出,默认NULL的话是禁止导出的。

导出命令:select id,分数 from score into outfile "/var/lib/mysql-files/score.txt";  (id,分数是列名,score是表名)

加上逗号分隔和引号:select id,分数 from score into outfile "/var/lib/mysql-files/score1.txt" fields terminated by "," enclosed by '"';

使用mysqldump导出文件:mysqldump -T ./ schoolDB score --fields-terminated-by ',' --fields-optionally-enclosed-by '"';

Mysql导出:

mysql -uroot -pxxx --vertical --execute=' select id from score ;' schoolDB > /var/lib/mysql-files/score.txt

[root@hkdlvm00 mysql-files]# cat score.txt
*************************** 1. row ***************************
id: 1
*************************** 2. row ***************************
id: 2
*************************** 3. row ***************************
id: 3

导出时,去掉*****注释:mysql -uroot -pxxx --execute=' select id from score ;' schoolDB > /var/lib/mysql-files/score.txt

 id
1
2
3

导入数据:load data infile '/var/lib/mysql-files/score.txt' into table score  ignore 1 lines (班级);

load data infile '/var/lib/mysql-files/score.txt' into table score  ignore 1 lines (班级) set 分数=77;    (设置分数栏的所有默认值为77)

原文地址:https://www.cnblogs.com/20e8/p/10654237.html