SELECT ... INTO OUTFILE中面臨的secure_file_priv問題

當從一個表中的數據導入到一個文件中時,能夠執行以下命令:java

SELECT * FROM table_name INTO OUTFILE '/home/wuwenlun/test.sql'

當此時可能會遇到以下問題:mysql

ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

當前mysql啓用了安全文件模式,因此導入數據到文件失敗了。那麼接下來,咱們執行以下命令來看看,安全文件的存放路徑應該是在哪裏呢?sql

mysql> SELECT @@secure_file_priv;
+-----------------------+
| @@secure_file_priv    |
+-----------------------+
| /var/lib/mysql-files/ |
+-----------------------+
1 row in set (0.00 sec)

安全文件存放路徑是在/var/libmysql-files/路徑下。安全

有一種方法是直接把數據導入到在該路徑下的文件。如:this

SELECT * FROM table_name INTO OUTFILE '/var/lib/mysql-files/test.sql'

另外一種是修改/etc/my.cnf文件,末尾添加以下內容:code

secure_file_priv="/"     ##表示便可將數據導出到任意目錄
相關文章
相關標籤/搜索