首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LOAD_FILE只返回null

问LOAD_FILE只返回null
EN

Stack Overflow用户
提问于 2022-08-13 23:12:21
回答 3查看 71关注 0票数 -1

我想用以下查询将图像插入数据库:

代码语言:javascript
复制
SELECT LOAD_FILE('/Users/juliagaskevich/cool-background.svg');

我查过了:

  • 文件大小< max_allowed_packet。
  • 文件对每个人都有读写和执行权限。
  • 我用来执行查询的用户拥有文件特权。
  • mysql> show variables like "secure_file_priv"返回NULL。

系统配置:

macOS蒙特雷,12.5版,芯片苹果M1

MySQL Ver 8.0.29用于macos12 on arm64 (MySQL ) MySQL Config:

代码语言:javascript
复制
[mysqld]
user = mysql_deamon
slow_query_log_file = my-slow-query.log
slow-query-log
log-queries-not-using-indexes
general_log_file = my-GENERAL.log
max_allowed_packet = 1073741824

还有,我试着用男人的想法来解决我的问题,但是.

1.vi my.cnf secure priv= /mysql/dataload (将/mysql/dataload更改为您自己的目录)。 2.重新启动mysql服务

改进型my.cnf

更改的my.cnf (在安全文件-priv路径中没有引号)

语句选择LOAD_FILE(.)送出一根绳子。若要插入,请使用语句LOAD DATA INFILE ..。

priv结果

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-08-15 22:34:25

求解

如果您使用的是mac,那么您有/etc/my.cnf (文件,其中存储了MySQL配置),所以把这个字符串secure_file_priv = ""放在那里

运行此命令以应用配置更改mysqld --defaults-file=/etc/my.cnf --validate-config --log_error_verbosity=2 ,如果有任何警告或错误,请修复它,因为它可以解决问题。

如果您使用的用户与root用户不同,则用户必须具有文件权限mysql> GRANT privilege ON privilege_level TO account_name;,例如mysql> GRANT FILE ON *.* TO pizzaadmin;。

最重要的是:要应用更改,必须重新启动mysqld.。

有几个步骤:

  1. 停止它(您可以使用以下命令mysqladmin shutdown完成此操作)
  2. 重新开始(只需在终端中执行mysqld即可)
票数 0
EN

Stack Overflow用户

发布于 2022-08-13 23:21:51

1.vi my.cnf

secure priv= /mysql/dataload (将/mysql/dataload更改为您自己的目录)。

2.重新启动mysql服务

票数 0
EN

Stack Overflow用户

发布于 2022-08-14 05:02:20

语句SELECT LOAD_FILE(...)传递一个字符串。要使用INSERT,请使用LOAD DATA INFILE ...语句

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73348167

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档