#如何解决The MySQL server is running with the --secure-file-priv option so it cannot execute this state
如何解决The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
一、问题
在使用mysql代码将查询结果导出到EXCEL表中时,遇到 “server is running with the --secure-file-priv option so it cannot execute this statement” 报错信息
二、产生原因
Mysql配置文件规定了导出文件的默认路径,自定义路径会报错。
三、解决办法
1.
输入命令 show variables like 'secure%'
变量secure_file_priv对应的值就是你电脑上MySQL默认导出文件的路径,笔者电脑的默认路径是C:\ProgramData\MySQL\MySQL Server 8.0\Uploads\,要想修改路径,只需将MySQL配置文件修改,如果不想修改路径,直接用它给的默认路径即可。
2.
将上图路径复制到资源管理器,回车
查看上一级目录,配置文件my.ini即保存在这里的
用笔记本打开my.ini,搜索 secure
找到secure-file-priv,将原本的那行注释掉(用#号),在下面一行写
secure-file-priv=""
secure-file-priv=""
表示任意路径都可以,也可以自己指定路径。
3.
最关建的一步,Windows在打开配置文件时,会自动修改配置文件的编码格式为UTF-8,而MySQL配置文件的默认编码格式为 ANSI。这一步很重要!!!一定不要搞错,不然会导致MySQL重启失败。 点击 右上方->另存为->ANSI。 是否替换,选择“是”
4.
最后,重启MySQL服务,点击 开始->搜索组件服务->点击服务->找到mysql->重启此服务
四、查看结果
查询成功