如何解析 "used command not allowed" in MySQL?

How to resolve "used command not allowed" in MySQL?

此 post 不重复。我已经提到了这个 post and this post 但答案没有帮助

我正在尝试在 mySQL 客户端 window 中执行代码。然而,我收到以下错误

The used command is not allowed with this MySQL version

我做了什么

SET GLOBAL local_infile = 1;
SHOW VARIABLES LIKE 'local_infile';

我在MySQL 8.0 Command Line Client

中执行了上面的命令

当我尝试在 MySQL Shell 中做同样的事情时,我得到以下错误 Unexpected identifier

我假设 MySQL Shell 是服务器。我们是否必须在客户端和服务器端都执行此操作?

我该如何解决这个问题?此外,每当我启动命令行客户端时,系统只会提示我输入 密码。所以我无法将它作为参数传递。我的客户端如下所示

那么登录时如何传递以下参数呢?

mysql -u abcd -p password_here --local-infile=1

我是 MySQL 的新手,你能指导我吗?

Q1:

要在MySQL Shell中使用运行sql命令,您需要将默认的JS更改为sql

R1:

键入 \sql 以从 js 更改为 sql
mysql-js> \sql

Q2: 所以我无法将它作为参数传递

为此,您必须在 windows 搜索下 selecting 'MySQL x.x Command Line Client'。

要解决您需要在环境路径中有 mysql bin 文件夹或执行以下步骤来访问

R2:

转到 "C:\Program Files\MySQL\MySQL Server x.x\bin" 这是 windows 默认路径,除非您更改。

然后在地址栏中如果你点击它将select(即C:\地址栏你只会看到 cmd) 然后按回车键。

一旦 cmd window 打开,mysql 路径如下

C:\Program Files\MySQL\MySQL Server 5.7\bin>

键入 blah..blah.. blah

mysql -u abcd -p password_here --local-infile=1

注意: 如果你只是解析 -p 而不是 -ppassword 之后它会要求输入密码。因此,如果您要直接输入密码,则输入 -pyourpass -p 和密码

之间不会有任何空格