PHP Joomla 2.5 MySQL 加载数据文件 - 权限被拒绝
PHP Joomla 2.5 MySQL Load Data Infile - Permission denied
我正在尝试将 CSV 文件加载到 table。我收到权限被拒绝的错误:
Error importing CSV File: (1045) Access denied for user 'username'@'localhost'
(using password: YES)
SQL=LOAD DATA INFILE '//homeX/username/public_html/activator/uploadedCSV/20180603064917_csvtoimport.csv'
IGNORE INTO TABLE `csv_import_temp`
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\'
LINES TERMINATED BY '\r\n'
IGNORE 1 ROWS
( contact_lname, contact_email ) ;
csv 文件存在,权限设置为 0644
。
SQL语句是:
LOAD DATA INFILE '//homeX/username/public_html/activator/uploadedCSV/20180603064917_csvtoimport.csv'
IGNORE
INTO TABLE `csv_import_temp`
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\'
LINES TERMINATED BY '\r\n'
IGNORE 1 ROWS
(
contact_lname,
contact_email
);
我试过在文件名中同时使用前导单斜杠和双斜杠(如上所述)。我也在 phpAdmin 中尝试 运行 它并得到相同的错误消息。
网站托管在 Hostgator 共享帐户上。
我已经添加了代码来验证该文件是否存在并具有正确的权限,它确实如此。但是 MySQL 似乎无法访问该文件。
是的,我知道 Joomla 2.5 已停产,但由于多种原因,该站点无法升级,仅用于管理功能。
欢迎任何建议,因为替代方法是使用 PHP 读取文件并插入每一行,这样会慢得多。
CSV 的前 4 行:
"name","email"
"John Smith","xxx1@yyy.edu"
"John Doe","xxx2@yyy.edu"
"Jane Doe","xxx3@yyy.edu"
这个错误通常是因为您没有包含 LOCAL 关键字。尝试:
LOAD DATA LOCAL INFILE '//homeX/username/public_html/activator/uploadedCSV/20180603064917_csvtoimport.csv'
IGNORE
INTO TABLE `csv_import_temp`
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\'
LINES TERMINATED BY ''
IGNORE 1 ROWS
(
contact_email,
contact_email
);
权限错误具有误导性,它与尝试 mysql 系统目录有关,而不是您尝试读取的文件。
我正在尝试将 CSV 文件加载到 table。我收到权限被拒绝的错误:
Error importing CSV File: (1045) Access denied for user 'username'@'localhost'
(using password: YES)
SQL=LOAD DATA INFILE '//homeX/username/public_html/activator/uploadedCSV/20180603064917_csvtoimport.csv'
IGNORE INTO TABLE `csv_import_temp`
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\'
LINES TERMINATED BY '\r\n'
IGNORE 1 ROWS
( contact_lname, contact_email ) ;
csv 文件存在,权限设置为 0644
。
SQL语句是:
LOAD DATA INFILE '//homeX/username/public_html/activator/uploadedCSV/20180603064917_csvtoimport.csv'
IGNORE
INTO TABLE `csv_import_temp`
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\'
LINES TERMINATED BY '\r\n'
IGNORE 1 ROWS
(
contact_lname,
contact_email
);
我试过在文件名中同时使用前导单斜杠和双斜杠(如上所述)。我也在 phpAdmin 中尝试 运行 它并得到相同的错误消息。
网站托管在 Hostgator 共享帐户上。
我已经添加了代码来验证该文件是否存在并具有正确的权限,它确实如此。但是 MySQL 似乎无法访问该文件。
是的,我知道 Joomla 2.5 已停产,但由于多种原因,该站点无法升级,仅用于管理功能。
欢迎任何建议,因为替代方法是使用 PHP 读取文件并插入每一行,这样会慢得多。
CSV 的前 4 行:
"name","email"
"John Smith","xxx1@yyy.edu"
"John Doe","xxx2@yyy.edu"
"Jane Doe","xxx3@yyy.edu"
这个错误通常是因为您没有包含 LOCAL 关键字。尝试:
LOAD DATA LOCAL INFILE '//homeX/username/public_html/activator/uploadedCSV/20180603064917_csvtoimport.csv'
IGNORE
INTO TABLE `csv_import_temp`
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\'
LINES TERMINATED BY ''
IGNORE 1 ROWS
(
contact_email,
contact_email
);
权限错误具有误导性,它与尝试 mysql 系统目录有关,而不是您尝试读取的文件。