目錄
- 1 復制從庫之前配置的參數文件
- 2、停下現有的從庫
- 3、開啟主庫的備份狀態
- 4、把主數據庫目錄拷貝到備庫目錄就可以了:
- 5、還原之前復制的recovery.conf文件
- 6、停下主庫備份
- 7、啟動備庫
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日志查看具體問題
如果從庫配置的時間過長,最后就會報錯,顯示找不到日志文件
但是只要主從配置好了,數據能從主庫自動同步從庫 就可以忽略錯誤
到此這篇關于PostgreSql從庫重新配置的詳情的文章就介紹到這了,更多相關PostgreSql從庫重新配置內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- 詳解PostgreSql數據庫對象信息及應用
- postgresql的now()與Oracle的sysdate區別說明
- Postgresql 通過出生日期獲取年齡的操作
- postgresql 獲取兩個時間類型小時差值案例
- postgresql中時間轉換和加減操作
- postgresql 計算時間差的秒數、天數實例
- PostgreSQL TIMESTAMP類型 時間戳操作
- postgreSQL 非count方法算記錄數操作