Centos

從 MYSQL 導出到 CSV

  • November 6, 2014

如何在 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 (Core)

我嘗試了以下方法:

   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

再次與語法錯誤相同。

我正在練習這個,所以我可以看看我是否可以手動將一種數據庫儲存遷移到另一種。一個 zen cart db 到一個 open cart 一個,而不必使用像 cart2cart 這樣的付費產品,主要是這樣我可以看到商店的膽量以更好地理解。

看到沒有其他人回答我會,但公平地說,Archemar 在我之前就已經解決了。我知道我需要選擇一個表,但不確定語法並且沒有考慮確保文件夾 apache 擁有。

要將 mysql 數據庫表導出到 CSV 文件,請登錄到管理員,然後使用以下命令。

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 中。

我可以在Google文件中打開 products.csv,或者如果我有它的話。

引用自:https://unix.stackexchange.com/questions/166060