postgresql安裝設定筆記

1.centos server安裝方法,參考以下連結

https://www.postgresql.org/download/linux/redhat/

2.遠端連線方法

如果連線client要安裝跟server一起,則此點可不用設定,就像是phpMyAdmin的使用方式

  • 打開及設定防火牆,增加一個firewall zone
  • 修改postgresql listen_address
  • 修改postgresql 客戶端憑證控制檔pg_hba.conf
nano /var/firewalld/zones/vpn.xml #內容如下
firewall-cmd --reload
firewall-cmd --list-all-zones
<zone>
<short>OpenVPN</short>
<description>OpenVPN network firewall</description>
<source address="10.8.0.0/24"/>
<service name="postgresql" />
</zone>
nano /var/lib/pgsql/11/data/postgresql.conf #內容如下
#修改要監控的ip,使用分號區格
listen_addresses='localhost,10.8.0.1'   
nano /var/lib/pgsql/11/data/pg_hba.conf
#增加授權連線的remote
host    all     all     10.8.0.0/24     md5
#重啟postgresql 11
systemctl restart postgresql-11

3.安裝client

可選擇直接在postgresql server端安裝client pgAdmin4有點像phpMyAdmin,參考下方網址

https://www.tecmint.com/install-pgadmin4-in-centos-7/

或是remote side安裝,然後連入,因為開發需要,所以個人是使用openvpn連入,然後在自己的pc端安裝client

在windows上下載安裝檔,跟其它應用程式一樣,沒有太大差別,啟動pgAdmin4時會開啟網頁

https://www.pgadmin.org/download/pgadmin-4-windows/

這裡有幾點需要補充一下

修改預設密碼

su - postgres -c "psql"

psql (11.0)
Type "help" for help.

postgres=#

postgres=# \password postgres

另一種修改預設密碼方式

$ sudo su - postgres
bash-4.2$ psql -c "alter user postgres with password 'StrongPassword'"
ALTER ROLE
-bash-4.2$

建立資料庫及使用者(可以使用安裝好的pgAdmin4)

-bash-4.2$ createuser test_user
-bash-4.2$ createdb test_db -O test_user
-bash-4.2$ grant all privileges on database test_db to test_user;

登入test_user

$ psql -U test_user -h localhost -d test_db

增加連線數

1.設定postgresql連線數

nano /var/lib/pgsql/11/data/postgresql.conf
#change max_connections and shared buffer ,need restart postgresql server
max_connections = 100
shared_buffers = 128MB

2.設定kernel.shmmax

#值需大於postgresql shared buffers的值
nano /etc/sysctl.conf
#Max to 96MB
kernel.shmmax=100663296

發表迴響