https://www.imooc.com/article/41883

MySQL 报错

[Code: 1290, SQL State: HY000]  The MySQL server is running with the –secure-file-priv option so it cannot execute this statement 
通过show variables like ‘%secure_file_priv%’; 
secure_file_priv参数说明

这个参数用来限制数据导入和导出操作的效果,例如执行LOAD DATA、SELECT … INTO OUTFILE语句和LOAD_FILE()函数。这些操作需要用户具有FILE权限。 
如果这个参数为空,这个变量没有效果; 
如果这个参数设为一个目录名,MySQL服务只允许在这个目录中执行文件的导入和导出操作。这个目录必须存在,MySQL服务不会创建它; 
如果这个参数为NULL,MySQL服务会禁止导入和导出操作。这个参数在MySQL 5.7.6版本引入

附操作: 
secure_file_priv  mysqld 用这个配置项来完成对数据导入导出的限制、

例如我们可以通过 select * from tempdb.t into outfile ‘/home/mysql/t.txt’; 把tempdb.t 表的数据导出来;这个导出操作可以面临如下问题

1、任何一个mysql用户只要它能执行上面的sql语句、并且执行成功;那么它就把文件写到了/home/mysql/目录下?

 如果有一个坏人他一直导出数据到文件目录,那么总有一天会被写满的!

2、没有办法限制只能把文件导出到/tmp/目录

我们可以通过secure_file_priv 来完成对导入|导出的限制

secure_file_priv

  1、限制mysqld 不允许导入 | 导出

     mysqld –secure_file_prive=null

  2、限制mysqld 的导入 | 导出 只能发生在/tmp/目录下

     mysqld –secure_file_priv=/tmp/

  3、不对mysqld 的导入 | 导出做限制

cat /etc/my.cnf 
    [mysqld] 
    secure_file_priv 
   

  • 导出到任意目录

在进行数据导出的时候出现–secure-file-priv option so it cannot execute this statement

问题时,修改/etc/mysql/mysql.conf.d/mysqld.cnf文件,如图

在末尾添加一句secure_file_priv=”/”即可将数据导出到任意目录 

如何以上设置还是不行,就参考http://blog.csdn.net/qq_28921653/article/details/54174341

作者:QQ595454159
链接:https://www.imooc.com/article/41883
来源:慕课网
本文原创发布于慕课网 ,转载请注明出处,谢谢合作

MYSQL数据导出与导入,secure_file_priv参数设置的更多相关文章

  1. MySQL数据导出与导入

    工具 mysql mysqldump 应用举例 导出 导出全库备份到本地的目录 mysqldump -u$USER -p$PASSWD -h127.0.0.1 -P3306 --routines -- ...

  2. MySQL数据导出导入【转】

    MySQL基础 关于MySQL数据导出导入的文章,目的有二: 1.备忘 2.供开发人员测试 工具 mysqlmysqldump 应用举例 导出 导出全库备份到本地的目录 mysqldump -u$US ...

  3. mysql数据导出权限问题

    mysql数据导出的方法有非常多,比如mysqldump, mysql -e 'sql' > file, 这些都能够非常方便的导出数据,但是在使用普通用户导出数据的时候,出现了问题. 1 sel ...

  4. memcached命令行、Memcached数据导出和导入、php连接memcache、php的session存储到memcached

    1.memcached命令行 telnet 127.0.0.1 11211set key2 0 30 2abSTOREDget key2VALUE key2 0 2abEND  如: set key3 ...

  5. memcached命令行、Memcached数据导出和导入

    1.memcached命令行 telnet 127.0.0.1 11211set key2 0 30 2abSTOREDget key2VALUE key2 0 2abEND  如: set key3 ...

  6. MySQL数据文件的导入、导出

    1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql 2.导 ...

  7. MySQL数据导出导入任务脚本

    #!/usr/bin/env python#-*- encoding: utf8 -*- import timeimport osimport mysql.connector #定义一些全局变量  w ...

  8. mysql创建账号、授权、数据导出、导入

    1.账号创建及授权 grant all privileges on *.* to 'yangxin'@'%' identified by 'yangxin123456' with grant opti ...

  9. mysql 数据导出 常用总结

    mysqldump -t 数据库名 -uroot -p > xxx.sql 总结:上面的导出形式默认表结构和数据: -d表结构; -t数据;   -c, --complete-insert使用完 ...

随机推荐

  1. EasyHook(一)

    前言 在说C# Hook之前,我们先来说说什么是Hook技术.相信大家都接触过外挂,不管是修改游戏客户端的也好,盗取密码的也罢,它们都是如何实现的呢? 实际上,Windows平台是基于事件驱动机制的, ...

  2. python 整数转字节 char

    把10进制整数30,转换为字节 方法一 chr(30).encode() 结果 方法二 struct.pack('B', 30) 结果 准确地讲,Python没有专门处理字节的数据类型.但由于str既 ...

  3. leetcode 回文二叉树

    C++最简单的方法,遍历存在vector<int> ivec容器中,然后头尾对应比较 O(n)时间,O(n)空间 /** * Definition for singly-linked li ...

  4. eclipse 4.32 安装 gradle

    更新网址  http://dist.springsource.com/release/TOOLS/gradle

  5. JS实现数组排序:升序和降序

    如果指明了 compareFunction ,那么数组会按照调用该函数的返回值排序.即 a 和 b 是两个将要被比较的元素: 如果 compareFunction(a, b) 小于 0 ,那么 a 会 ...

  6. 使用Callable或DeferredResult实现springmvc的异步请求

    使用Callable实现springmvc的异步请求 如果一个请求中的某些操作耗时很长,会一直占用线程.这样的请求多了,可能造成线程池被占满,新请求无法执行的情况.这时,可以考虑使用异步请求,即主线程 ...

  7. oracle 普通数据文件备份与恢复

    普通数据文件指:非system表空间.undo_tablespace表空间.临时表空间和只读表空间的数据文件.它们损坏导致用户数据不能访问,不会导致db自身异常.实例崩溃.数据库不恢复就无法启动的情况 ...

  8. kafka学习(六)

    用kafka构建数据管道   把kafka看着是一个数据的端点,怎么把kafka数据移到mysql,elasticSearchs 这里面介绍kafka connect API怎么样帮忙我们把数据移到我 ...

  9. VS2017使用dotnet命令

    添加引用Microsoft.EntityFrameworkCore.Tools 添加引用后提示未找到命令“dotnet ef”向csprog文件添加如下节点 <ItemGroup> < ...

  10. netcat命令用法

    1,端口扫描nc -z -v -n 172.31.100.7 21-25 2,聊天Server:nc -l 1567Client:nc 172.31.100.7 1567 3,文件传输Server:n ...