【发布时间】:2019-10-29 11:56:03
【问题描述】:
我正在尝试将结果集导出到 csv 文件并将其加载到 mysql。
mysql -e "select * from temp" > '/usr/apps/{path}/some.csv'
输出文件不可导入。它有查询、标题和一堆不需要的行。我想要的只是文件中以逗号分隔的 VALUES,以便我可以将其导入回来。
到目前为止我尝试了什么?
- 已添加 | sed 's/\t/,/g' - 没有帮助
- 试过 OUTFILE 但没有用。
- 尝试了 SHOW VARIABLES LIKE “secure_file_priv”,结果为 null。
OUTFILE 对我不起作用,因为我收到错误“MySQL 服务器正在使用 --secure-file-priv 选项运行,因此它无法执行此语句”。我无法编辑变量secure-file-priv。它现在有一个空值。
我得到如下图的文件输出。我使用了别名 mysql2csv='sed '\''s/\t/","/g;s/^/"/;s/$/"/;s/\n//g'\'''
【问题讨论】:
-
脚本有问题,不执行。请修复它。另见How to create a Minimal, Complete, and Verifiable example 和How to use Shellcheck。
-
@jww 例如,我只是写了它。请立即查看。
标签: mysql linux export-csv