• ADADADADAD

    ERROR 1 (HY000): Can't create/write to file '/data[ mysql数据库 ]

    mysql数据库 时间:2024-12-25 09:58:23

    作者:文/会员上传

    简介:

    使用非DBA用户进行load data 操作,发现报错。MariaDB [temp_archive]> select * from t1 into outfile '/data/test.sql';ERROR 1 (HY000): Can't create/write

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    使用非DBA用户进行load data 操作,发现报错。

    MariaDB [temp_archive]> select * from t1 into outfile '/data/test.sql';

    ERROR 1 (HY000): Can't create/write to file '/data/test.sql' (Errcode: 13 "Permission denied")

    提示报错。

    报错原因权限不足。

    分析:

    权限有系统权限和数据库权限。

    /data 目录权限 chown -R mysql:mysql /data/

    实验1:操作系统权限

    创建hy用户,使用root账户操作,文件保存目录/data/:

    useradd -u 1100 hy

    password hy

    su hy

    [hy@XHY005116 /]$ mysql

    MariaDB [(none)]> use test

    Database changed

    MariaDB [test]> select * from t111 into outfile '/data/t111.sql';

    Query OK, 1 row affected (0.00 sec)

    MariaDB [test]> create table t112 like t111;

    Query OK, 0 rows affected (0.08 sec)

    MariaDB [test]> load data infile '/data/t111.sql' into table t112;

    Query OK, 1 row affected (0.02 sec)

    Records: 1 Deleted: 0 Skipped: 0 Warnings: 0

      文件保存目录/

      MariaDB [test]> select * from t111 into outfile '/t111.sql';

      ERROR 1 (HY000): Can't create/write to file '/t111.sql' (Errcode: 13 "Permission denied")

        报错:权限不足,此处可以分析出系统权限不足,导致报错。

        实验2:

        hy用户登录ya,ya账户读写权限,文件保存目录 /data/。

        MariaDB [test]> select * from t100 into outfile '/data/t100.sql';

        ERROR 1045 (28000): Access denied for user 'ya'@'192.168.%' (using password: YES)

          使用root用户导出的文件,使用ya用户导入

          MariaDB [test]> load data infile '/data/t100.sql' into table t101;

          ERROR 1045 (28000): Access denied for user 'ya'@'192.168.%' (using password: YES)

          均报错:判断是数据库权限问题。

          尝试授权file权限。

          MariaDB [(none)]> grant file on *.* to 'ya'@'192.168.%';

          MariaDB [(none)]> flush privileges;

          [hy@XHY005116 data]$ mysql -uya -p123456 -h292.168.5.116

          MariaDB [test]> select * from t101 into outfile '/data/t101.sql';

          MariaDB [test]> load data infile '/data/t101.sql' into table t102;

          Query OK, 6 rows affected (0.02 sec)


          成功:

          文件保存目录:/

          MariaDB [test]> select * from t101 into outfile '/t101.sql';

          ERROR 1 (HY000): Can't create/write to file '/t101.sql' (Errcode: 13 "Permission denied

          报错:权限问题。

            结合:上两个实验可以得出“(Errcode: 13 "Permission denied” 错误是和操作系统目录有关。

            对应mysql的权限

    ERROR 1 (HY000): Can't create/write to file '/data.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载