无法将文件加载到 MySQL



我是一个数据库新手。我目前正试图创建一个数据库和mysql+aiomysql数据库。我需要通过读取本地csv文件来初始化一些表。

首先,我用

连接到之前创建的数据库
database = Database('mysql+aiomysql://{user}:{passwd}@{host}/{db}?local-infile=1'.format(
host='xxx',
user='xxx',
passwd='xxx',
db='xxx'))
await database.connect()

使用?local-infile=1启用客户端本地数据(我也尝试使用?allowLoadLocalInfile=true)。之后,我执行SET GLOBAL local_infile = true以启用服务器端的本地数据。最后,我还确保设置了secure-file-priv = ""

尽管如此,当我执行LOAD DATA LOCAL INFILE file INTO TABLE table时,我得到错误:

pymysql.err。OperationalError:(3948, '加载本地数据被禁用;这必须在客户端和服务器端同时启用。

也尝试在上面的LOAD命令中添加LOCAL,但没有任何运气。

我在这里错过了什么?

找到您的my.cnf文件(通常在/etc/my.cnf,/etc/mysql/my.cnf或/usr/local/etc/my.cnf中),然后添加以下行:

[mysqld]
local-infile
secure-file-priv = "/directory/you/wish/to/load/files/"
[mysql]
local-infile

请重新启动mysql并重试。

相关内容

  • 没有找到相关文章

最新更新