有时候安装 PostgreSQL 的 Windows 版本时会在创建 Windows 服务时失败,取消“安装为服务”的选项后,如何手工把它安装成服务呢?
1. 首先检查用户,即启动 PostgreSQL 服务的用户,默认用户是 postgres,通过“控制面板”->“计算机管理”-> “本地用户和组”检查是否有 postgres 用户,如果有则先删除此用户。
2. 通过命令行添加 postgres 用户,如下:
C:\
>
netuserpostgrespass
/
add
/expires:never /passwordchg:no
上面的命令,创建 postgres 用户,密码为 pass,用户帐号不过期,用户不能修改密码。
用户创建成功后,将用户从Users组里删除,如下:
C:\
>
netlocalgroupuserspostgres
/
delete
3. 创建 PostgreSQL 服务,命令如下:(假设我们的数据库创建在 E:\pgsql\data下,创建数据库用 createdb 命令)
D:\ProgramFiles\PostgreSQL\
8.2\bin
>
pg_ctlregister
-
NPostgreSQL
-
Upostgres
-
Ppass
-
DE:\pgsql\data
4. 指定 postgres 用户的访问权限,如下:
D:\ProgramFiles\PostgreSQL\
8.2
>
cacls.
/
T
/
E
/
Ppostgres:R
上面的命令,设置 postgres 用户对 D:\Program Files\PostgreSQL\8.2 目录可读。
E:\pgsql
>
cacls.
/
T
/
E
/
Ppostgres:R
E:\pgsql > caclsdata / T / E / Ppostgres:C
上面的命令,设置 postgres 用户对 E:\pgsql\data 目录可更改(可写)
E:\pgsql > caclsdata / T / E / Ppostgres:C

5. 去启动一下服务中的PostgreSQL试试看吧。