我在postgreSQL中建立了一张名为student的表
在psql中输入:COPY student TO 'c:/abc.txt';
进行输出,提示为:could not open file "c:/abc.txt" for writing: Permission denied
请问Permission denied是因为权限不够?可我是用超级用户登陆的
请问应当怎样顺利输出?谢谢!

解决方案 »

  1.   

    去确认文件存在
    查看root用户权限
    看看c盘是不是只读的
      

  2.   

    这个权限不是数据库中的权限
    而是运行数据库服务器程序的操作系统用户没有写C盘的权限.按理, postgresql不允许administrator的用户运行服务程序,必须建立一个普通权限的用户(如:postgres)来运行服务程序.你再确认一下这个操作系统的用户权限.
      

  3.   

        谢谢两位了!我再试了一下,把备份文件写入C盘不行,写入DEF盘就可以,然后查了一下分区格式,C盘是NTFS,DEF是FAT32的,可能有这个原因吧……
      

  4.   

    在C盘你试下不要直接写根目录,写到C:\temp\data.txt试试