从 MYSQL 导出到 CSV

从 MYSQL 导出到 CSV

如何在 Centos 7 上的 mariadb 中将 MYSQL 导出为 CSV?

我在用:

Server version      5.5.37-MariaDB
Protocol version    10
Connection          Localhost via UNIX socket
UNIX socket         /var/lib/mysql/mysql.sock

在 CentOS Linux 版本 7.0.1406(核心)上

我尝试了以下方法:

    mysql> SELECT *
        -> INTO OUTFILE 'cd /var/foo.csv'
        -> FIELDS TERMINATED BY ','
        -> ENCLOSED BY '"'
        -> ESCAPED BY '\\'
        -> LINES TERMINATED BY '\r\n'
        -> FROM foo;
    Query OK, 4079 ROWS affected (0.02 sec)

foo 是数据库名称吗?但它给了我一个语法错误。我不需要选择特定的桌子吗?

然后我尝试了这个:

mysql -u root -p enterpass nameofdb -B -e “select * from \`person\`;” | sed     ‘s/\t/”,”/g;s/^/”/;s/$/”/;s/\n//g’ > nameofdb.csv

与语法错误再次相同。

我正在练习这个,以便看看是否可以手动将一种数据库存储迁移到另一种数据库存储中。一个禅宗购物车数据库到一个开放式购物车数据库,而无需使用像 cart2cart 这样的付费产品,主要是这样我可以看到商店的内部情况,以便更好地理解。

答案1

看到没有人回答我会的,但公平地说,Archemar 在我之前解决了这个问题。我知道我需要选择一个表,但不确定语法,也没有考虑确保文件夹 apache 拥有。

要将 mysql 数据库表导出到 CSV 文件,请登录到 admin,然后使用以下命令。

SELECT *
INTO OUTFILE '/tmp/products.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n'
FROM products;

然后它留下了三个文件,例如“systemd-private-SjP6B1”,其中一个文件包含 tmp 文件夹并位于 products.csv 中。

如果我有的话,我可以在谷歌文档或 Excel 中打开 products.csv。

相关内容