0

我正在尝试通过运行以下查询将 MySQL 数据库中的表转储到文本文件中

 SELECT fields FROM text_file_table INTO OUTFILE 'C:\\Program Files\\textfile.text'

但它给了我错误 无法创建/写入文件“C:\Program Files\textfile.text”

我认为这是由于安全问题,它不允许 DBMS 将文件写入该目录。如果还有其他问题,请告诉我,并帮助我找到问题的解决方案。我正在 Windows Server 2008 上执行此操作。谢谢!

4

2 回答 2

0

可能有两个问题。该命令在操作系统中作为“mysql”运行,因此“mysql”用户可能没有写入 c:\Program Files 的权限。它不应该,所以这很好。如果您将目标路径更改为可以写入的位置,则此问题将消失。

另一个问题是您在 mysql 中登录的用户可能没有读取和写入文件的权限 - 请参阅http://dev.mysql.com/doc/refman/5.1/en/privileges-provided.html#隐私文件。如果这是问题所在,则您必须拥有GRANT用户的权限。

于 2013-02-22T12:56:34.060 回答
0

我认为问题出在路径上。如果您使用的是窗户

查询中的文件路径应该是这样的

'C:/Program Files/textfile.txt'

或者试试这个,我不确定

'C:\Program Files\textfile.txt'

在文件名的文本中也使用 txt =>textfile.text

于 2013-02-22T13:04:24.047 回答