只记录解决问题的方法。

mysql 版本: 5.7.18

问题: 在执行mysql 函数load_file时,该函数将加载指定文件的内容,存储至相应字段。如:

 SELECT LOAD_FILE("D:\aa.txt");

但是执行时总是返回为空。各种斜线都尝试了。

 

经过查阅资料得:https://segmentfault.com/a/1190000009333563

mysql 新版本下secure-file-priv字段 : secure-file-priv参数是用来限制LOAD DATA, SELECT ... OUTFILE, and LOAD_FILE()传到哪个指定目录的。

  • ure_file_priv的值为null ,表示限制mysqld 不允许导入|导出

  • 当secure_file_priv的值为/tmp/ ,表示限制mysqld 的导入|导出只能发生在/tmp/目录下

  • 当secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制

如何查看secure-file-priv参数的值:

 
1
show global variables like '%secure%';

Windows下MYSQL读取文件为NULL

默认的为NULL。即不允许导入导出。

修改mysql.ini 文件,在[mysqld] 下加入

secure_file_priv =

保存,重启mysql。

执行命令查看:

Windows下MYSQL读取文件为NULL

 

再次执行loadfile:

Windows下MYSQL读取文件为NULL

问题解决。

~~~~~

只记录解决问题的方法。

mysql 版本: 5.7.18

问题: 在执行mysql 函数load_file时,该函数将加载指定文件的内容,存储至相应字段。如:

 SELECT LOAD_FILE("D:\aa.txt");

但是执行时总是返回为空。各种斜线都尝试了。

 

经过查阅资料得:https://segmentfault.com/a/1190000009333563

mysql 新版本下secure-file-priv字段 : secure-file-priv参数是用来限制LOAD DATA, SELECT ... OUTFILE, and LOAD_FILE()传到哪个指定目录的。

  • ure_file_priv的值为null ,表示限制mysqld 不允许导入|导出

  • 当secure_file_priv的值为/tmp/ ,表示限制mysqld 的导入|导出只能发生在/tmp/目录下

  • 当secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制

如何查看secure-file-priv参数的值:

 
1
show global variables like '%secure%';

Windows下MYSQL读取文件为NULL

默认的为NULL。即不允许导入导出。

修改mysql.ini 文件,在[mysqld] 下加入

secure_file_priv =

保存,重启mysql。

执行命令查看:

Windows下MYSQL读取文件为NULL

 

再次执行loadfile:

Windows下MYSQL读取文件为NULL

问题解决。

相关文章:

  • 2021-10-01
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-02
  • 2022-12-23
  • 2021-06-17
  • 2021-12-29
猜你喜欢
  • 2021-12-22
  • 2021-08-16
  • 2021-12-10
  • 2022-12-23
  • 2022-01-15
  • 2021-08-31
  • 2021-12-31
相关资源
相似解决方案