如何将mysql多个outfiles转换成单个压缩zip

时间:2017-03-02 13:45:29

标签: mysql zip into-outfile

  1. 我正在运行Xubuntu 16.04和MariaDB与MySQL。
  2. 这三个文件(customers.csv,items.csv,invoices.csv)是由 MySQL INTO OUTFILE命令如下所示。
  3. 这3个文件需要进入一个zip文件(report.zip)。
  4. 3个文件(customers.csv,items.csv,invoices.csv)不需要永久保存,因为它们仅用作临时文件,因此可以将它们打包到zip文件中。
  5. 我的示例MySQL outfile命令:

    SELECT customer_id, firstname, surname FROM customers INTO OUTFILE '/tmp/customers.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n';

    SELECT item_id, itemname, item_plu FROM items INTO OUTFILE '/tmp/items.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n';

    SELECT invoice_id, invoice_total FROM invoices INTO OUTFILE '/tmp/invoices.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n';

    问题

    你们是否知道一个MySQL命令,其中INTO OUTFILE文件直接进入一个zip文件,而不是作为3个额外的单独文件存储到磁盘上?

1 个答案:

答案 0 :(得分:1)

我刚看了你的问题,我在寻找相同功能的同时找到了答案。所以我分享我发现的东西: 不幸的是,似乎MySQL不支持直接输出压缩,这个功能已被请求但尚未实现:

This is the link

据我所知,这样做的最好方法是分两步完成:

  1. 输出
  2. 使用命令行压缩
  3. 乔佛