MySQL load data local infile 关于ERROR 1148 (42000): The used command is not allowed with this MySQ...

首先:千万不要修改My.ini文件!!!我修改了2次,每次都导致MySQL命令行闪退,然后需要重新安装服务器。这个文件无需修改!

出现这个问题,主要是因为MySQL的本地数据导入策略是关闭的。我们只需要把这个策略打开就好了。

首先我们先验证一下:

在MySQL的命令提示行中可以通过以下代码检查一下:

show variables like '%local%'

其结果显示如下图:

图1

这说明该项策略是OFF状态,是关闭的。

接下来,我们需要两步操作,第一步是将Local_infile值改为On,第二步对Local_infile赋值后进入数据库,完成上述两步操作后就可以成功导入本地文件数据了。

第一步:

在MySQL的命令提示行中输入:

set global local_infile=1;

此时我们可以再通过以下代码检查一下:

show variables like '%local%'

其结果显示如下图:

图2

此时我们已经将local_infile的值改为了1,目前该项策略已经处于打开状态。

第二步:

接下来,我们要关闭MySQL命令提示行,然后通过CMD命令提示行进入MYSQL,同时对local_infile进行赋值,

打开CMD窗口后,在CMD 中输入以下语句:

mysql -u(用户名) -p(密码)--local-infile=1;

例:mysql -uroot -p123455 --local-infile=1;

(可能出现cmd不识别mysql命令的情况,这是因为没有设置环境变量,具体操作方法详见:https://jingyan.baidu.com/article/c1a3101e72fc9bde656debf7.html)

图三

这样我们就顺利地进入到了数据库中,同时local_infile的值也调整为了1。

然后,就可以使用 load data local infile语句导入需要的数据啦~

如果方法可行,麻烦点个赞吧!谢谢!!!

你可能感兴趣的:(MySQL load data local infile 关于ERROR 1148 (42000): The used command is not allowed with this MySQ...)