注意下載的是二進制版,不是帶Windows Installer的。
http://www.enterprisedb.com/products-services-training/pgbindownload
x86下載http://get.enterprisedb.com/postgresql/postgresql-9.2.4-1-windows-binaries.zip
x64下載http://get.enterprisedb.com/postgresql/postgresql-9.2.4-1-windows-x64-binaries.zip
執行下列步驟前,暫作以下假定:
PostgreSQL擬裝在d:\postgresql
數據庫以后擬存放在d:\postgresql\data
首先下載postgresql-9.2.4-1-windows-x64-binaries.zip最新版待用,下列步驟達到手工安裝好PostgreSQL,初始化數據庫,將PostgreSQL注冊為服務。
1、PostgreSQL.zip解壓至d:\postgresql后,創建一個data目錄;
2. 設置環境變量,編輯批處理文件 配置環境變量.vbs(永久生效)
a) 內容如下
1
2
3
4
5
6
7
8
9
10
11
|
on error resume next set sysenv=CreateObject( "WScript.Shell" ).Environment( "system" ) '系統環境變量的數組對象 Path = CreateObject( "Scripting.FileSystemObject" ).GetFolder( "." ).Path '添加變量 sysenv( "PGHOME" )= "D:\pgsql" sysenv( "PGHOST" )= "localhost" sysenv( "Path" )=sysenv( "PGHOME" )+ "\bin;" +sysenv( "Path" ) sysenv( "PGLIB" )=sysenv( "PGHOME" )+ "\lib" sysenv( "PGDATA" )=sysenv( "PGHOME" )+ "\data" wscript.echo "PostgreSQL環境變量安裝成功!不需要重新啟動計算機啊!" |
b) 執行如下:
3、在空白處按住shift點擊鼠標右鍵,新開一個cmd窗口,并cd 至d:\postgresql\bin ;
4. 初始化并創建數據庫(一次即可)
initdb.exe -D d:\postgresql\data -E UTF-8 --locale=chs -U postgres -W
-D :指定數據庫簇的存儲目錄E:\pgsql\data
-E :指定DB的超級用戶的用戶名postgres
--locale:關于區域設置(chinese-simplified-china)
-U :默認編碼格式chs
-W :為超級用戶指定密碼的提示
如下:
4. 啟動數據庫
注:若未注冊為系統服務,則需每次手動啟動,否則pgadmin3連接數據庫失敗
pg_ctl -D d:\postgresql -l logfile start
顯示如下:
啟動后,在數據庫安裝的主目錄下生成一個logfile文件:D:\postgresql\logfile
5. 注冊為win8系統服務
注:需管理員權限方可
pg_ctl register -N PostgreSQL -D D:\postgresql\data
查看已經注冊的服務:win+R在彈出的運行框中,輸入:services.msc,如下:
net start PostgreSQL 查看是否啟動:命令行下輸入tasklist
netstat –an 可以查看所有和本地計算機建立連接的IP 卸載服務:同樣需要管理員權限,兩種方式
1) pg_ctl unregister –N PostgreSQL (win8)
2) sc delete PostgreSQL (PostgreSQL)
6. 配置pgAdmin3客戶端
目錄為D:\postgresql\bin\ pgAdmin3,雙擊,配置
7. 連接數據庫成功
如何讓postgresql支持遠程登錄呢?
只需要在服務器端配置
修改兩個文件:
postgresql.conf
pg_hba.conf
-----------------
比如環境中db server ip為10.10.3.5,
客戶端的ip為10.10.3.5
在postgresql.conf文件添加:
listen_addresses = '*'
在pg_hba.conf文件添加:
host all all 10.10.3.1/24 trust
24表示掩碼為255.255.255.0,所以表示對這個子網的所有IP開放了。
就可以在10.10.3.5上訪問10.10.3.5了。
完成后執行一下
C:\Windows\System32>net stop PostgreSQL
C:\Windows\System32>net start PostgreSQL