首頁 > 資料庫 > mysql教程 > 為什麼在 MySQL 中使用 LOAD DATA INFILE 時出現「存取被拒絕」?

為什麼在 MySQL 中使用 LOAD DATA INFILE 時出現「存取被拒絕」?

Linda Hamilton
發布: 2024-10-30 11:33:02
原創
733 人瀏覽過

Why Am I Getting

MySQL 中LOAD DATA INFILE 的存取被拒絕

在MySQL 中,使用LOAD DATA INFILE 語句可能會導致存取被拒絕的錯誤,例如如「#1045 - 使用者'user'@'localhost' 的存取被拒絕(使用密碼:YES)。」

此錯誤通常表示執行查詢的目前使用者沒有足夠的權限來載入資料一個文件到一個表中。若要解決此問題,請確保使用者俱有必要的權限。

特別是需要授予使用者 FILE 權限。此權限允許使用者從伺服器的檔案系統讀取檔案。如果沒有此權限,使用者將無法存取指定的檔案。

要授予使用者 FILE 權限,請執行下列查詢:

<code class="sql">GRANT FILE ON *.* TO user_name;</code>
登入後複製

將 user_name 替換為使用者名稱您要授予權限的使用者的名稱。

此外,請考慮將 LOCAL 關鍵字加入 LOAD DATA INFILE 語句中。 LOCAL 關鍵字指示 MySQL 從客戶端電腦而不是伺服器的檔案系統讀取檔案。在某些情況下,這可以更有效率、更安全。

以下是使用 LOCAL 修改語句的範例:

<code class="sql">LOAD DATA LOCAL INFILE 'path/to/file.csv' INTO TABLE table_name;</code>
登入後複製

以上是為什麼在 MySQL 中使用 LOAD DATA INFILE 時出現「存取被拒絕」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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