0

我正在尝试使用

load data local infile '<filename>' into table <tablename> 

命令,但它给出了错误 1148。我知道这是由于一些安全问题,我必须启用 local-infile 选项才能执行此命令。

但由于我试图通过 python 执行此操作,我不确定如何启用此选项。

附加信息:我正在为 python 使用 mysqldb 导入

4

1 回答 1

0

经过一番谷歌搜索后想通了。

几个答案指向我可以编辑的事实

/etc/mysql/my.cnf

并在文件中添加 local-infile=0

但有时(不知道为什么)python 不会从文件中获取设置。

您可以传递参数:

read_default_file="/etc/mysql/my.cnf"

在创建与数据库的连接时,如下

conn = MySQLdb.connect(host='localhost',user='root',passwd='passwd',db='db',charset = "utf8", use_unicode = True,read_default_file="/etc/mysql/my.cnf")
于 2012-09-17T00:16:35.860 回答