Как импортировать данные через MySQL Workbench с SSH? - PullRequest
0 голосов
/ 12 сентября 2018

Я пытаюсь загрузить данные в свою базу данных MySQL на хостинге сервера PythonAnywhere через SSH (у меня есть платная учетная запись).У меня есть три базы данных (alter$default, alter$ip_data и alter$visitor_data) из интерфейса PythonAnywhere.

Используя интерактивные инструкции ( здесь ), я могу успешно подключиться к серверу через SSH с помощью MySQL Workbench и увидеть три базы данных в окне схем ( Нажмите здесь, чтобы посмотреть изображениесписка схем ).

Я могу успешно добавить таблицы в базу данных по своему выбору, но когда я пытаюсь добавить данные, я получаю Error Code: 1045. Access denied for user 'alter'@'%' (using password: YES).

Я пытался устранить неполадки:

Для SELECT user(); возвращается alter@10.0.0.89

Для SELECT current_user(); возвращается alter@%

Для SHOW GRANTS; возвращает:

  GRANT USAGE ON *.* TO 'alter'@'%' IDENTIFIED BY PASSWORD <secret> WITH MAX_USER_CONNECTIONS 6 
  GRANT ALL PRIVILEGES ON 'alter$default' .* TO 'alter'@'%' 
  GRANT ALL PRIVILEGES ON 'alter$visitor_data' .* TO 'alter'@'%' 
  GRANT ALL PRIVILEGES ON 'alter$ip_data' .* TO 'alter'@'%' 

Похоже, что у меня есть необходимые привилегии и я правильно подключен к серверу MySQL - так почему он не разрешает мне писать в базу данных?Файл .csv находится не в том месте?Я не могу использовать пользователя 'root', поскольку это, несомненно, учетная запись администратора PythonAnywhere?

Дополнительные сведения: SQL-запрос для записи в базу данных, который возвращает «доступ запрещен», равен:

LOAD DATA INFILE 'VALUES.CSV'
   INTO TABLE ip_data_table
      FIELDS TERMINATED BY ','
      ENCLOSED BY '"'
      LINES TERMINATED BY '\r\n'
IGNORE 0 LINES;

1 Ответ

0 голосов
/ 13 сентября 2018

Это инфил, который вызывает отказ в разрешении. Вам нужно запустить клиент mysql с флагом --local-infile = 1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...