2013-04-10 59 views
8

啓用PostgreSQL的我用Perl安裝Cygwin並啓用Postgresql包。Cygwin中

然後鍵入:

/usr/bin/cygserver-config (This will install the service) 

然後鍵入:

net start cygserver(This starts the service) 

接下來,我需要讓PostgreSQL的在Cygwin的,所以我嘗試下面的命令中提到:

cygrunsrv -S cygserver 

initdb -D /usr/share/postgresql/data 

pg_ctl start -D /usr/share/postgresql/data -l /var/log/postgresql.log 

createdb 

psql 

我得到錯誤:

$ initdb -D /usr/share/postgresql/data 
-bash: initdb: command not found 

$ pg_ctl start -D /usr/share/postgresql/data -l /var/log/postgresql.log 
-bash: pg_ctl: command not found 

可有人請告訴我如何得到它的權利。

回答

12

Postgresql initdbpg_ctl可執行文件位於/usr/sbin下。

我猜測/usr/sbin不在您的PATH設置中。添加它應該可以做到。

我用一個啓動/停止腳本,我一直$HOME/bin下稱爲pg。這是gist

+0

我執行了前3個命令,但是一旦我執行createdb。 $ CREATEDB數據庫名稱 CREATEDB:無法連接到數據庫模板1:無法連接到服務器:沒有這樣的文件或目錄 是在本地運行和驗收Unix域套接字連接 「/tmp/.s.PGSQL.5432」服務器? – Sid 2013-04-10 03:17:39

+0

@sid,這聽起來像是與原始問題中報告的錯誤稍有不同的問題。看起來'pg_ctl'還沒有開始。你應該先檢查一下。 – buruzaemon 2013-04-10 04:08:04

+0

我啓動了pg_ctl服務,它打印一個服務器啓動命令。有沒有一種方法可以通過電子郵件發送我的疑問 – Sid 2013-04-10 04:44:34