Доступ запрещен для LOAD DATA INFILE в MySQL
В MySQL использование оператора LOAD DATA INFILE может привести к ошибке отказа в доступе, например как «# 1045 — Доступ запрещен для пользователя 'user'@'localhost' (с использованием пароля: YES).»
Эта ошибка обычно указывает на то, что текущий пользователь, выполняющий запрос, не имеет достаточных привилегий для загрузки данных из файл в таблицу. Чтобы решить эту проблему, убедитесь, что у пользователя есть необходимые разрешения.
В частности, пользователю необходимо предоставить привилегию FILE. Эта привилегия позволяет пользователям читать файлы из файловой системы сервера. Без этой привилегии пользователь не сможет получить доступ к указанному файлу.
Чтобы предоставить пользователю привилегию FILE, выполните следующий запрос:
GRANT FILE ON *.* TO user_name;
Замените user_name именем пользователя, которому вы хотите предоставить привилегию.
Кроме того, рассмотрите возможность добавления ключевого слова LOCAL в оператор LOAD DATA INFILE. Ключевое слово LOCAL указывает MySQL читать файл с клиентского компьютера, а не из файловой системы сервера. В некоторых случаях это может быть более эффективным и безопасным.
Вот пример модифицированного оператора с использованием LOCAL:
LOAD DATA LOCAL INFILE 'path/to/file.csv' INTO TABLE table_name;
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3