很简单,如果你是用POSTGRES用户安装的,那么在 INITDB只前,
把你的安装目录授予POSTGRES写权利.

解决方案 »

  1.   

    如果你机器上有NTFS分区,按提示安装在NTFS分区就可以了。
    如果你的计算机上没有 NTFS 分区,那么安装成服务就会报错,但可以这样做:
    1. 首先安装的时候不要选择安装成服务,仅仅安装软件,假设到 c:\pgsql
    2. 创建一个无管理员权限的用户,比如 postgres,设定密码,比如 1234
    3. 以管理员,比如 Administrator 登录,打开控制台,简称控制台 A
    4. 在控制台 A 运行 runas /user:postgres cmd,打开一个以 postgres 用户身份执行的控制台,简称控制台 P
    5. 在控制台 P 上运行 c:\pgsql\bin\initdb -D d:\pg_data 初始化数据库集群
    6. 在控制台 A 执行 c:\pgsql\bin\pg_ctl register -N PostgreSQL -U posgres -P 1234 -D d:\pg_data 注册服务
    7. 在 控制面板 --> 管理工具 --> 服务 中启动 PostgreSQL
       可能启动失败,是因为创建的用户 postgres 没有以服务方式登录的
       权限,打开 PostgreSQL 服务的属性窗口,重新设置密码与你上面创建用户的密码一致即可。
    8. 为方便起见,可在控制台 P 创建一个管理员名的数据库超级用户,
       比如 c:\pgsql\bin\createuser -a -d -P Administrator
      

  2.   

    我试了,新建一个用户postgres,然后赋予他安装目录的所有权限,但是安装的时候仍然提示说没有写的权限。
      

  3.   

    我机器上没NTFS分区,我就按上面步骤安装的,并没出现什么权限问题啊