zoukankan      html  css  js  c++  java
  • mysql中FILE权限

    FILE权限指的是对服务器主机上文件的访问,数据库用户拥有FILE权限才可以执行select into outfile,load data infile操作。

    参考文章:http://blog.itpub.net/27126919/viewspace-2125131/

    测试select into outfile操作

    root用户上执行

    mysql> CREATE USER 'filetest'@'localhost' IDENTIFIED BY123456'
    FILE权限是对所有数据库文件而言的,因此数据库只能写成*.*,而不是某一个数据库 mysql> grant file on test3.* to 'filetest'@'localhost'; ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES //赋予FILE权限 mysql> grant file on *.* to 'filetest'@'localhost'; Query OK, 0 rows affected (0.00 sec) //赋予select权限 grant select on test3.* to 'filetest'@'localhost'; //刷新信息 flush privileges;

    filetest用户上执行

    use test3;
    mysql> select * from test2 into outfile 'd:/test.txt'
        -> ;
    ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv opti
    on so it cannot execute this statement
    
    //即使有了file权限,输出目录路径应该secure_file_priv一致
    mysql> show variables like '%sec%'
        -> ;
    +--------------------------+----------+
    | Variable_name            | Value    |
    +--------------------------+----------+
    | require_secure_transport | OFF      |
    | secure_auth              | ON       |
    | secure_file_priv         | e:	est |
    +--------------------------+----------+
    mysql> select * from test2 into outfile 'e:/test/test.txt';
    Query OK, 1 row affected (0.01 sec)

    测试load data infile操作:

    mysql> load data infile 'e:/test/test.txt' into table test2;
    ERROR 1142 (42000): INSERT command denied to user 'filetest'@'localhost' for table 'test2'
    //需要给filetest赋予insert权限
    
    root用户上执行:
    mysql> grant insert on test3.* to 'filetest'@'localhost';
    flush privileges;
    
    filetest用户:
    //infile的目录也要与secure_file_priv一致
    mysql> load data infile 'e:/test/test.txt' into table test2;
    Query OK, 1 row affected (0.07 sec)
    Records: 1  Deleted: 0  Skipped: 0  Warnings: 0
  • 相关阅读:
    mysql-5-aggregation
    mysql-4-functions
    mysql-3-orderby
    技术之心 | 云信和TA们携手打响防疫战
    疫情下的传统商企自救|4个Tips搭建销量过亿直播间
    那些2019年会爆发的泛娱乐黑科技风口
    流量难、获客难、增长难?增长黑客思维“解救”B端业务
    【翻译】Facebook全面推出Watch Party,可多人线上同看直播视频
    深入浅出聊一聊Docker
    C++写日志方法调试
  • 原文地址:https://www.cnblogs.com/darange/p/10508714.html
Copyright © 2011-2022 走看看