Windows 安裝包啟動Postgresql

RAYFUXK發表於2020-10-07

現在這個網站下載 PostgreSQL https://www.enterprisedb.com/download-postgresql-binaries ,版本選擇最新版的就好。
下載壓縮包後,解壓縮,可以看到下面這張圖的檔案目錄:
在這裡插入圖片描述
我們所需要的啟動檔案就在bin 的資料夾裡面。
根據官方文件我們可以看到,要使用資料庫,要先初始化存放資料庫資料的資料夾也就是用 initdb,我們先用 initdb.exe --help 命令來看看是否有命令需要我們配置的。在bin資料夾下面執行 initdb.exe --help 可以看到下面的輸出。

G:\pgsql\bin>initdb.exe --help
initdb 初始化一個 PostgreSQL 資料庫簇.

使用方法:
  initdb [選項]... [DATADIR]

選項:
  -A, --auth=METHOD         本地連線的預設認證方法
      --auth-host=METHOD    本地的TCP/IP連線的預設認證方法
      --auth-local=METHOD   本地socket連線的預設認證方法
  -D, --pgdata=DATADIR      當前資料庫簇的位置
  -E, --encoding=ENCODING   為新資料庫設定預設編碼
  -g, --allow-group-access  允許組對資料目錄進行讀/執行
      --locale=LOCALE       為新資料庫設定預設語言環境
  --lc-collate, --lc-ctype, --lc-messages=LOCALE
  --lc-monetary, --lc-numeric, --lc-time=LOCALE
                            為新的資料庫簇在各自的目錄中分別
                            設定預設語言環境(預設使用環境變數)
      --no-locale           等同於 --locale=C
      --pwfile=FILE         對於新的超級使用者從檔案讀取口令
  -T, --text-search-config=CFG
                            預設的文字搜尋配置
  -U, --username=NAME       資料庫超級使用者名稱
  -W, --pwprompt            對於新的超級使用者提示輸入口令
  -X, --waldir=WALDIR       預寫日誌目錄的位置
      --wal-segsize=SIZE    WAL段的大小(兆位元組)

非普通使用選項:
  -d, --debug               產生大量的除錯資訊
  -k, --data-checksums      使用資料頁產生效驗和
  -L DIRECTORY              輸入檔案的位置
  -n, --no-clean            出錯後不清理
  -N, --no-sync             不用等待變化安全寫入磁碟
  -s, --show                顯示內部設定
  -S, --sync-only           只同步資料目錄

其它選項:
  -V, --version             輸出版本資訊, 然後退出
  -?, --help                顯示此幫助, 然後退出

如果沒有指定資料目錄, 將使用環境變數 PGDATA

我們可以所需要的就是引數有 --encoding=ENCODING--username=NAME--pwprompt--waldir=WALDIR--pgdata=DATADIR,初始化資料庫。

G:\pgsql\bin>initdb.exe --pgdata=G:\pgsql\data --encoding=UTF-8 --username=postgres --pwprompt --waldir=G:\pgsql\wal
屬於此資料庫系統的檔案宿主為使用者 "Administrator".
此使用者也必須為伺服器程式的宿主.
資料庫簇將使用本地化語言 "Chinese (Simplified)_China.936"進行初始化.
initdb: could not find suitable text search configuration for locale "Chinese (Simplified)_China.936"
預設的文字搜尋配置將會被設定到"simple"

禁止為資料頁生成校驗和.

輸入新的超級使用者口令:
再輸入一遍:

建立目錄 G:/pgsql/data ... 成功
建立目錄 G:/pgsql/wal ... 成功
正在建立子目錄 ... 成功
選擇動態共享記憶體實現 ......windows
選擇預設最大聯接數 (max_connections) ... 100
選擇預設共享緩衝區大小 (shared_buffers) ... 128MB
selecting default time zone ... Asia/Hong_Kong
建立配置檔案 ... 成功
正在執行自舉指令碼 ...成功
正在執行自舉後初始化 ...成功
同步資料到磁碟...成功

initdb: 警告: 為本地連線啟用"trust"身份驗證
你可以通過編輯 pg_hba.conf 更改或你下次
執行 initdb 時使用 -A或者--auth-local和--auth-host選項.

成功。您現在可以用下面的命令開啟資料庫伺服器:

    pg_ctl -D ^"G^:^\pgsql^\data^" -l 日誌檔案 start

註冊服務

G:\pgsql\bin>pg_ctl.exe register -N "pgsql" -D "G:\pgsql\data"

啟動服務

G:\pgsql\bin>pg_ctl.exe start

相關文章