Mysql
MySQL 輸出文件位置 - 訪問伺服器文件
我在 Windows7 上執行 MySQL Workbench 6.2 CE。我有一個 200,000 行的輸出表,我需要保存它。我將不得不重複此任務,因此我想迭代以下程式碼:
SELECT * FROM mytable INTO OUTFILE 'mytable.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n';
這可以保存我的輸出,但我無法訪問它。它似乎保存在伺服器數據庫中。我的桌面上安裝了伺服器,所以我應該能夠訪問它。你知道我怎樣才能找到我保存的 csv 文件的文件路徑嗎?
**Edit1:**我可以在 Workbench GUI 中手動保存它,但我想找到一個基於程式碼的解決方案,因為我必須多次迭代這個過程。
**Edit2:**放置所有文件路徑不起作用。它給出了一個錯誤:
Errcode: 13 - Permission denied
PS:對不起,如果這是一個基本問題,我是 MySQL 新手。
如果這是一次性的,您可以執行以下操作以
csv
使用 MySQL 工作台將結果導出到文件中:SELECT * FROM mytable
然後結果將出現在結果表(區域)中,您只需使用該區域中的導出按鈕即可:
否則,如果要創建輸出文件,可以使用共享文件夾來完成:
- 如果它通過網路
//my_pc/folder/test.csv
,兩台機器都具有讀/寫訪問權限- 如果它在同一台伺服器下使案例如
d:/test.csv
並將文件保存到您想要的任何位置。
預設情況下(如果未禁用)MySQL 會將文件保存到與數據庫相同的文件夾中,在我的情況下 - sakila
SELECT * FROM actor INTO OUTFILE 'mytable.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n';
您還可以向 my.ini 文件添加限制,例如
secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.7/Uploads"
https://dev.mysql.com/doc/refman/5.6/en/server-options.html#option_mysqld_secure-file-priv
如果未啟用嚴格模式,您可以使用“任何”路徑(Windows 啟用的任何路徑)作為輸出文件,但不要使用使用者文件夾或根文件夾以避免權限衝突。創建類似 c:/exchange 的東西