遇到錯誤:MySQL 伺服器安全文件權限限制語句執行
您遇到了錯誤「錯誤代碼:1290。MySQL 伺服器正在使用--secure-file-priv 選項運行,因此無法執行此語句”,同時嘗試執行涉及使用INTO OUTFILE 命令的MySQL 語句。
錯誤原因:
secure-file-priv選項限制MySQL可以寫入檔案的目錄以提高安全性。預設情況下,此選項限制 MySQL 寫入外部目錄。
立即解決方案(非設定變更):
解決此問題的快速解決方法是確定允許MySQL 寫入檔案的目錄:
<code class="sql">mysql> SHOW VARIABLES LIKE "secure_file_priv";</code>
確定允許的目錄後,修改INTO OUTFILE 語句以使用此目錄作為目標:
<code class="sql">SELECT * FROM xxxx WHERE XXX INTO OUTFILE '/var/lib/mysql-files/report.csv' FIELDS TERMINATED BY '#' ENCLOSED BY '"' LINES TERMINATED BY '\n'</code>
永久解決方案(設定變更):
Windows:
找到「[mysqld]」群組,新增或修改「secure-file-priv」選項指定允許的目錄。例如:
<code class="ini">[mysqld] secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.6/Uploads"</code>
Linux:
找到「[mysqld]」群組並新增或修改「secure- file-priv」選項來指定允許的目錄。例如:
<code class="ini">[mysqld] secure-file-priv="/var/lib/mysql-files/"</code>
以上是如何修復'錯誤代碼:1290。MySQL 伺服器正在使用 --secure-file-priv 選項運行...”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!