如何解決 MySQL 錯誤 1290 (HY000) --secure-file-priv 問題?

Susan Sarandon
發布: 2024-10-31 10:06:02
原創
593 人瀏覽過

How to Solve MySQL Error 1290 (HY000) --secure-file-priv Issue?

MySQL 錯誤1290 (HY000) -- 如何修正--secure-file-priv 問題

嘗試使用下列指令將MySQL 腳本結果匯出到文字檔案時INTO OUTFILE,您可能會遇到以下錯誤:

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

出現此錯誤是因為MySQL 伺服器的secure_file_priv 選項限制寫入特定目錄。

Ubuntu 16.04

辨識允許的寫入目錄:

mysql> SELECT @@GLOBAL.secure_file_priv;
登入後複製
登入後複製
登入後複製

寫入允許的目錄:

寫入允許的目錄:
mysql> SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';
登入後複製

Mac OSX (MAMP)

識別允許寫入目錄:

mysql> SELECT @@GLOBAL.secure_file_priv;
登入後複製
登入後複製
登入後複製

NULL 值:

如果結果為NULL,則建立~/.my.cnf 檔案:

$ vi ~/.my.cnf
[mysqld_safe]
[mysqld]
secure_file_priv="/Users/russian_spy/"
登入後複製

非NULL 值:

修改/etc/my. cnf 檔案:

[mysqld]
secure_file_priv="/Users/russian_spy/"
登入後複製

重新啟動MySQL並驗證:

  1. 停止MySQL 伺服器(MAMP:「停止伺服器」)。
  2. 更新 ~/.my.cnf 或 /etc/my.cnf 中的 secure_file_priv。
  3. 啟動 MySQL 伺服器(MAMP:「啟動伺服器」)。
mysql> SELECT @@GLOBAL.secure_file_priv;
登入後複製
登入後複製
登入後複製

將表格匯出到 CSV 檔案:

mysql> SELECT * FROM train INTO OUTFILE '/Users/russian_spy/test.csv' FIELDS TERMINATED BY ',';
登入後複製

以上是如何解決 MySQL 錯誤 1290 (HY000) --secure-file-priv 問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板