mysql load data sql_mysql:执行LOAD DATA LOCAL 报错

mysql:执行LOAD DATA LOCAL 报错。

我使用navicat for mysql 连接 mysql服务器执行local 可以正常执行 。

show VARIABLES like  '%local%infile%'

结果如下:

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| local_infile  | ON    |

+---------------+-------+

1 row in set (0.00 sec)

使用SecureCRT连接到mysql服务器执行

load /usr/local/mysql/bin/mysql -uroot -h192.168.0.2 -proot databaseName  -e "LOAD DATA LOCAL INFILE 'data.txt' into table test(name,sex) "

就报错。

错误如下:

Error line: sql:

LOAD DATA LOCAL INFILE "/opt/BOCO.DAL/NPM/ODBCTEMP/4101_11111/load2db/ecp_smt.unl" IGNORE INTO TABLE ecp_smt_11111  FIELDS TERMINATED BY '      ' ;

Error, execute info:

LOAD DATA LOCAL INFILE  The used command is not allowed with this MySQL version

是在没办法就在mysql 命令中加上了 --local-infile=1,没想到执行成功了 。

命令如下:

/usr/local/mysql/bin/mysql -uroot -h192.168.0.2 -proot databaseName --local-infile=1 -e "LOAD DATA LOCAL INFILE 'data.txt' into table test(name,sex) "

--local-infile=1解释如下:是否使服务器支持LOAD DATA LOCAL INFILE  命令。

默认情况下,服务器是支持的 。所以默认情况下 --local-infile=1 的 。

所以在一般情况下执行

/usr/local/mysql/bin/mysql -uroot -h192.168.0.2 -proot databaseName  -e "LOAD DATA LOCAL INFILE 'data.txt' into table test(name,sex) "

是不会报错的。

如果报错了 ,就显示加上--local--infile=1 就行了。

over!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值