Mysqldump不想导出数据

时间:2013-04-26 22:26:56

标签: mysql windows mysqldump

C:\ Projects \ k> mysqldump --tab = c:\ temp \ multifile -ps -us s mysqldump:收到错误:1:执行'SELECT INTO OUTFILE'时无法创建/写入文件'c:\ temp \ multifile \ archive.txt'(错误代码:13)

如何在Windows上修复它?我对这个用户没有任何限制......

5 个答案:

答案 0 :(得分:1)

Windows错误13是“权限被拒绝”。也许该文件已经存在,您无法删除它,这是创建具有该名称的新文件所必需的。

答案 1 :(得分:1)

可能的原因:

  1. 这是我用mysqldump

    运行work时的输出
    $ ll
    total 908
    -rw-rw-r-- 1 work  work    1824 Apr 28 14:47 test.sql
    -rw-rw-rw- 1 mysql mysql 922179 Apr 28 14:47 test.txt
    

    test.sql由用户work创建,但test.txt由用户mysql创建,因此"权限被拒绝!"。在这种情况下,您应该chmod您的目录。

  2.   

    最好--tab仅用于转储本地服务器。如果将它与远程服务器一起使用,则--tab目录必须存在于本地和远程主机上,并且.txt文件将由服务器写入远程目录(在服务器主机上),而.sql文件将由mysqldump写入本地目录(在客户端主机上)。

    参考:Dumping Data in Delimited-Text Format with mysqldump

  3.   

    您需要FILE权限才能被允许使用SELECT ... INTO OUTFILE,这似乎是mysqldump --tab用来生成以制表符分隔的转储。

         

    此权限是全局的,这意味着它只能被授予" ON " :

    GRANT FILE ON *.* TO 'backup'@'%';
    

    参考:Which are the proper privileges to mysqldump for the Error Access denied when executing 'SELECT INTO OUTFILE'.?

答案 2 :(得分:0)

前几个想法:有足够的空间吗? mysql有权在那里写吗?

我发现的另一件事:关闭扫描防病毒软件中的windows / temp文件夹解决了这个问题。

希望有所帮助

答案 3 :(得分:0)

我在win7和Wn2008 R2上有类似的错误 - 错误13“权限被拒绝”。尝试了所有建议的解决方案不起作用。 的

我创建了一个文件夹,例如c:\ temp,并为登录用户提供了完全控制权。问题解决了。

右键单击目标文件夹 - >属性 - >安全 - >编辑...,确保在活动用户下可以编辑权限。

我发现即使在活动用户下,如果目标文件夹的“允许”权限显示为灰色,也会出现此问题。创建新文件夹并授予完全控制权后,所有权限都可以编辑,不会再出现权限错误。

答案 4 :(得分:0)

我遇到了类似的问题,并通过向目标文件夹添加“所有人”权限来解决了该问题。