我想将我的数据库导出到 .csv 文件中,但是执行命令时遇到了问题:
mysqldump -u root -p -t -T~/tesht/ database orders --fields-terminated-by=','
mysqldump: Got error: 1: "Can't create/write to file '/home/motocol/tesht/orders.txt' (Errcode: 13)" when executing 'SELECT INTO OUTFILE'
在对该问题进行一些研究后,我发现了这一点:
需要注意的是,您指定的目录必须可由运行 MySQL 服务器的用户写入。如果不是,您将收到如下错误:
mysqldump:出现错误:1:执行“SELECT INTO OUTFILE”时无法创建/写入文件“/path/to/filename.txt”(错误代码:13)如果您的 Linux 机器启用了 SELinux,则 SELinux 配置也必须允许 MySQL 写入该目录。
这正是我得到的错误,但是我已经认为我是按照这个说明做的邮政通过运行:
确保用户:组为 mysql:mysql 将 SELinux 标签设置为 mysqld_db_t 将 SELinux 用户设置为 system_u
现在当我执行 ls -ZI 时得到:
drwxrwxr-x. 2 mysql mysql 6 Nov 16 16:21 tesht
但我仍然遇到同样的错误。有什么想法吗?