PostgreSql從庫重新配置
postgresql資料庫采用主從配置 在主庫正常從庫掛掉的情況下 重新對從庫配置
😊
配置詳情:
主庫資料檔案:100G
壓縮時間1小時40分鐘,壓縮后檔案大小46G
解壓時間55分鐘
1 復制從庫之前配置的引數檔案
進入pgsql 檔案下面的data檔案
#把pgsql的組態檔復制到/home 檔案下
[root@postgre2 data]# cp pg_hba.conf /home/
[root@postgre2 data]# cp postgresql.conf /home/
[root@postgre2 data]# cp recovery.conf /home
2、停下現有的從庫
從庫:
/usr/pgsql-11/bin/pg_ctl -D /u01/pgsql/data/ stop --從庫的data檔案位置
[root@postgre2 ~]# su - postgres
Last login: Tue Dec 22 13:32:15 CST 2020 on pts/0
-bash-4.2$ /usr/pgsql-11/bin/pg_ctl -D /u01/pgsql/data/ stop
waiting for server to shut down.... done
server stopped
3、開啟主庫的備份狀態
主庫:
[root@postgre1 ~]# su - postgres
Last login: Thu Dec 24 09:23:55 CST 2020 on pts/1
-bash-4.2$ psql
psql (11.7)
Type "help" for help.
postgres=# select pg_start_backup('/tmp/backup');
pg_start_backup
-----------------
2/90000
–視窗不要退出
4、把主資料庫目錄拷貝到備庫目錄就可以了:
主庫:
資料庫目錄壓縮
[root@postgre1 pgsql]# pwd
/u01/pgsql
[root@postgre1 pgsql]# tar -zcvf data.tar.gz data
從庫:
洗掉從庫原來的data目錄
[root@postgre2 ~]# cd /u01/pgsql/
[root@postgre2 pgsql]# ls
data
[root@postgre2 pgsql]# rm -fr data/
主庫:
資料庫目錄遠程傳輸
[root@postgre1 pgsql]# sudo scp data.tar.gz root@postgre2:/u01/pgsql/data
從庫:
解壓資料庫目錄
[root@postgre2 ~]# cd /u01/pgsql/
[root@postgre2 pgsql]# tar -zxvf data
刪掉從主庫拷貝過來的postmaster.pid
[root@postgre2 pgsql]# cd data/
[root@postgre2 data]# rm -r postmaster.pid
5、還原之前復制的recovery.conf檔案
[root@postgre2 data]# cp /home/recovery.conf .
[root@postgre2 data]# chown postgres:postgres recovery.conf
[root@postgre2 data]# cp /home/postgresql.conf .
[root@postgre2 data]# cp /home/pg_hba.conf .
6、停下主庫備份
主庫:
postgres=# select pg_stop_backup();
NOTICE: pg_stop_backup complete, all required WAL segments have been archived
pg_stop_backup
----------------
0/640001F8
7、啟動備庫
從庫:
[root@postgre2 ~]# su - postgres
Last login: Thu Dec 24 11:06:30 CST 2020 on pts/1
-bash-4.2$ /usr/pgsql-11/bin/pg_ctl -D /u01/pgsql/data/ start
如果沒有啟動systemctl status postgresql-11或者log日志查看具體問題
如果從庫配置的時間過長,最后就會報錯,顯示找不到日志檔案
但是只要主從配置好了,資料能從主庫自動同步從庫 就可以忽略錯誤
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/240114.html
標籤:其他
上一篇:Jdbc基礎五步
下一篇:postgresql原始碼安裝
