1

我需要在节点中使用 mysql-libmysqlclient 来使用 LOAD DATA LOCAL INFILE。但是我收到一个错误

[错误:查询错误 #1148:此 MySQL 版本不允许使用的命令]

从 sequel pro 运行相同的命令不会发生这种情况,因此问题很可能与 mysql-libmysqlclient 使用的连接有关。

Anoyone 知道将哪些参数发送到 mysql-libmysqlclient 以解决此问题?

初始化连接:

secrets = stuff
mysql_db = mysql.createConnectionQueuedSync()

mysql_db.initSync()
mysql_db.realConnectSync secrets.host, secrets.user, secrets.password, secrets.database
mysql_db.connectError

module.exports = exports = mysql_db

发送查询:

mysql_db = require('./config/mysql_db')
sql_insert_into = "LOAD DATA local INFILE 'file_to_send.txt'     
into table #{table.name}    
FIELDS TERMINATED BY ';'    
LINES TERMINATED by '\\n'
"

mysql_db.query sql_insert_into, (err, answer)->
  console.log "sent " + sql_insert_into

我得到的错误:

[Error: Query error #1148: The used command is not allowed with this MySQL version]

小注:我用咖啡脚本编程,但这不应该改变任何东西

4

1 回答 1

0

如果在服务器或客户端中禁用了 LOAD DATA LOCAL,则尝试发出此类语句的客户端会收到以下错误消息:

ERROR 1148: The used command is not allowed with this MySQL version

您可以参考下面的 MySql 网站链接了解如何启用:

https://dev.mysql.com/doc/refman/5.5/en/load-data-local.html

于 2013-01-24T08:46:14.677 回答