猿问

如何使用 SSH 通过 MySQL Workbench 导入数据?

我正在尝试通过 SSH(我有一个付费帐户)将数据上传到我在 PythonAnywhere 服务器上托管的 MySQL 数据库。我在 PythonAnywhere 接口中有三个数据库(alter$default,alter$ip_data和alter$visitor_data)。


使用在线说明我可以使用 MySQL Workbench 通过 SSH 成功连接到服务器,并在模式窗口中看到三个数据库。

我可以成功地将表添加到我选择的数据库中,但是当我尝试添加数据时,我得到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;


凤凰求蛊
浏览 256回答 1
1回答

四季花海

这是导致权限被拒绝的 infile。您需要使用 --local-infile=1 标志启动 mysql 客户端。
随时随地看视频慕课网APP

相关分类

Python
我要回答