我试图通过运行以下查询将MySQL数据库中的表转换为文本文件
SELECT fields FROM text_file_table INTO OUTFILE 'C:\\Program Files\\textfile.text'
但它给了我错误 无法创建/写入文件“C:\ Program Files \ textfile.text”
我认为这是由于安全问题,它不允许DBMS在该目录上写入文件。如果还有其他问题,请告诉我,并帮助我找到问题的解决方案。我在Windows Server 2008上这样做。谢谢!
答案 0 :(得分:0)
可能有两个问题。该命令在操作系统中运行为' mysql'所以' mysql'用户可能没有权限在c:\ Program Files中写入。它不应该,所以这很好。如果将目标路径更改为可以写入的位置,则此问题将消失。
另一个问题是,您在mysql内部登录的用户可能没有读取和写入文件的权限 - 请参阅http://dev.mysql.com/doc/refman/5.1/en/privileges-provided.html#priv_file。如果这是问题所在,您必须为您的用户GRANT
提供权限。
答案 1 :(得分:0)
我认为问题在于路径。如果您使用的是Windows
文件路径在查询中应该是这样的
'C:/Program Files/textfile.txt'
或试试这个,我不确定
'C:\Program Files\textfile.txt'
还在文件名=>中使用文本内的txt。 textfile.text