2013-12-07 32 views
4
mysql> \T abc.txt 
./mysql: Can't create/write to file 'abc.txt' (Errcode: 13 - Permission denied) 
Error logging to file 'logPremiereQueries.txt' 

我遇到同样的问题,我通过运行CMD解决它(的MySQL 5.6命令行客户端)作为管理员。然后我可以很容易地找到abc.txt的位置。但是,在Mac OS X中,我不知道如何更改权限。如果成功登录文件,在哪里可以找到'abc.txt'?有任何想法吗?非常感谢你!无法创建/写入文件“xxxx.txt”(ERRCODE:13 - 拒绝权限)当我使用Windows 8

回答

1

如果使用tee (\T)命令MySQL时将尝试创建或追加到该文件在当前工作目录(目录从MySQL已经被启动)

的错误你不提供文件的具体路径是不言自明的 - 你只是没有权限在当前工作目录中写入文件。

如果你不知道(这是奇怪)什么是你当前的工作目录,你可以从mysql命令提示符下执行系统命令pwd

mysql> \! pwd 

我们解决问题或者:

  1. 将终端中的工作目录更改为您拥有写入权限的目录(例如您的主目录),然后启动mysql客户端

    $ cd ~ 
    $ mysql -uusername -p dbname 
    
  2. 在mysql提示符下使用tee (\T)命令指定一个有效的路径,指向你有写权限的目录。

    mysql> \T /Users/username/abc.txt 
    
+0

有没有帮助?你的问题需要更多帮助吗? – peterm

1

请查看 - >https://dev.mysql.com/doc/refman/5.0/en/cannot-create.html

一个解决方法是与--tmpdir选项启动mysqld,或将选项添加到您的选项文件中的[mysqld]部分。如果您使用的是Windows,打开服务\ TEMP

+0

谢谢...您的链接很有用。特别是,底部的一条评论提到“给MySQL用户FILE perms(CREATE USER MyDBconnecter ...和FILE perms)”,虽然没有创建新的登录名,但我做了'GRANT FILE ON *。* TO'用户名“@”主机” ....'。 **另外**注意,在我的情况下,我必须确保我的'--tee = \ .txt'中的目标文件是一个_different_文件,来自我的进程的其他日志记录:之前,我是两者都使用相同的文件,所以其中一个问题是,tee *文件已经打开*。 –

1

就要离开这个在这里的未来......

:例如,要指定C的目录。右键单击mysql服务,选择属性。在属性窗口中选择登录选项卡,然后以本地系统帐户登录。

如果您已准备就绪,请重新启动服务,并且您可以在有权写入的任何地方选择outfile。

0

我遇到了这个问题并解决了这个错误。

SELECT * FROM mahitab INTO OUTFILE '/var/lib/mysql-files/mahitab.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 LINE; 
ERROR 1 (HY000): Can't create/write to file '/var/lib/mysql-files/mahitab.csv' (Errcode: 13 - Permission denied) 

我们必须给予许可

[[email protected] tmp]# chmod 1777 /var/lib/mysql-files/ 
相关问题