Postgres 多實例實例部署方式

  Postgres 數據庫在原有示例正常運行狀況下,新增一個端口示例,主要目的解決新的項目和原有項目的數據庫部署不在衝突,能夠獨立運行,備份和還原數據互不影響,主要用的的命令有  initdb 數據庫初始化 ,pg_ctl start 進行示例的啓動,經過 pg_ctl.exe register  能夠實現將postgres 註冊成windows 服務,解決命令行沒法隨開機一塊兒啓動等問題。 本例子使用的postgres 版本是10 ,pgAdmin4.0。命令環境用的是cmder 強力推薦(https://cmder.net/html

  注意爲了避免影響原有的數據庫使用,務必要把原有的示例端口號指定,若是不指定會形成原有數據庫示例不能進行鏈接(詳見步驟2)。sql

  initdb  官方文檔寫能夠用 pg_ctl init[db] [-D datadir] [-s] [-o initdb-options] 代替,我沒試過,也能夠試試。數據庫

    pg_ctl start [-D datadir] [-l filename] [-W] [-t seconds] [-s] [-o options] [-p path] [-c]   啓動示例windows

    pg_ctl register [-D datadir] [-N servicename] [-U username] [-P password] [-S a[uto] | d[emand] ] [-e source] [-W] [-t seconds] [-s] [-o options]   進行window 服務註冊app

    postgres官網文檔對pg_ctl 命令詳解 連接 http://www.postgres.cn/docs/10/app-pg-ctl.htmlpost

一、 initdb -D C:\Soft\PostgreSQL\10\data2 -E UTF-8 --locale=chs -U postgres -W 如圖1 所示;測試

 

 

     圖1 initdb 命令進行初始化數據庫spa

二、修改默認示例data 目錄 postgresql.conf 第63行端口號:5432(否則原有示例會報錯),如圖2所示。.net

 

 
    圖2 修改data\postgresql.conf 默認示例端口,指定爲5432 
 命令行

    修改新目錄 data2文件夾中配置文件 postgresql.conf  第63行端口號:5433,如圖3所示;

 

        圖3 修改新目錄 data2文件夾中配置文件 postgresql.conf

 

 

 

 

三、 pg_ctl -D ^"C^:^\Soft^\PostgreSQL^\10^\data2^" -l logfile start 啓動服務進行測試,如圖4所示;
 

 

 

            圖4 啓動新示例

 

四、客戶端鏈接測試

(1)用pgadmin 鏈接原有示例5432,配置參數如圖5所示; 

 

            圖5 pgadmin 鏈接原有示例5432 

  已經鏈接成功了,原有示例正常運行~~

 

           圖6 pgadmin 展開原有數據庫示例 

(2)鏈接5433 端口示例

 

          圖6 pgadmin 鏈接實例5433

  新端口鏈接成功! 

 

         圖7 pgadmin 鏈接實例5433

五、將新的端口註冊成新的服務 

pg_ctl.exe register -N "pgsql5433" -D "C:\Soft\PostgreSQL\10\data2"

 

 

 查看服務已經成功註冊,這樣就可設置服務隨開機一塊兒啓動了

相關文章
相關標籤/搜索