前一篇的centos6安裝postgresql在centos7發生了一些變化。
安裝
下載yum repo
https://yum.postgresql.org/repopackages.php
yum install pgdg-centos10-10-2.noarch.rpm
安裝server和客戶端
yum install -y postgresql10-server postgresql10
初始化db
/usr/pgsql-10/bin/postgresql-10-setup initdb
數據文件依舊是: /var/lib/pgsql/10/data/
啟動Postgres
systemctl start postgresql-10
確認端口是否啟動
[root@localhost system]# netstat -antup | grep 5432
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 2753/postmaster
設置開機啟動
systemctl enable postgresql-10
服務文件: /usr/lib/systemd/system/postgresql-10.service
修改data目錄
默認安裝在系統盤下,通常系統盤只有40g。我們需要將data和log放到我們的數據盤
。
停止服務
systemctl stop postgresql-10
遷移data目錄
復制數據庫文件
cp -R /var/lib/pgsql/10 /data/postgres/db/
chown -R postgres.postgres /data/postgres/db/
修改postgres用戶的環境變量
vim /var/lib/pgsql/.bash_profile
設置
PGDATA=/data/postgres/db/10/data
修改service文件
vim /usr/lib/systemd/system/postgresql-10.service
設置
Environment=PGDATA=/data/postgres/db/10/data
重啟
systemctl daemon-reload
systemctl start postgresql-10
連接測試
切換用戶postgres可以免密連接
su postgres
psql
設置密碼
\password
修改允許遠程其他IP連接
首先進入我們設置的data目錄
cd /data/postgres/db/10/data
然后 vim pg_hba.conf,添加
# IPv4 local connections:
host all all 127.0.0.1/32 ident
host all all 10.7.10.1/24 md5
第二行是我們新增加的,意思是允許10.7.10.1到10.7.10.254的網段通過密碼連接。
繼續修改vim postgresql.conf
listen_addresses = '*' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost'; use '*' for all
# (change requires restart)
#port = 5432 # (change requires restart)
max_connections = 2000 # (change requires restart)
打開listen_addresses 順手修改下最大連接數。
然后重啟就好了。
systemctl start postgresql-10
在另一台機器上遠程連接測試:
export PGPASSWORD='123456'
psql -Upostgres -h10.7.10.111
,連接成功。
查看最大連接數
postgres=# show max_connections;
max_connections
-----------------
2000
(1 row)