load加载csv文件的时候secure file priv 设置失败

在使用load_data导入数据的时候显示没有权限,于是按照文档指导执行
SET GLOBAL SECURE_FILE_PRIV = “”;
但是obclient提示ERROR 1235 (0A000): modify SECURE_FILE_PRIV not by unix socket connection not supported。
我的版本是4.2,自己从源码编译的debug版本

observer没有这个限制,你是用哪个版本的mysql客户端连接的?


我用的是obclient连接的,
系统mysql版本是8.0.33

你是在用obclient连接MySQL8.0的服务端。这就需要参考一下mysql 8.0的官方文档说明了。从之前的信息来看,8.0相对于5.x,更新了蛮多东西。

我连接的应该是oceanbase服务端吧,指令是obclient -h127.0.0.1 -P10400 -uroot -Doceanbase,10400端口运行的是ob。然后在这里设置secure file priv,报错:


这是mysql的问题吗?

我看到你发出来的mysql 8.0我以为你的问题是关于mysql的。
我看了下最新的代码,这是刚刚发出来的新功能,但是还没有发出release版本,也就没有对应的文档。
对应的unix socket文件在observer运行目录的run/sql.sock。要修改这个变量,使用mysql -S <xxx/run/sql.sock> 连接然后调整变量。

1 个赞

非常感谢,您解决了我的问题! :smiling_face_with_three_hearts: 辛苦了

出于安全目的对这个功能做了限制。

1 个赞

明白了,谢谢!

因为涉及到安全问题,所有涉及到此安全问题的ob版本对此变量的修改权限在近期进行了限制,相关版本的文档也进行了更新,参考:
https://www.oceanbase.com/docs/common-oceanbase-database-cn-0000000002183508

1 个赞