目錄
- 1 復(fù)制從庫(kù)之前配置的參數(shù)文件
- 2、停下現(xiàn)有的從庫(kù)
- 3、開(kāi)啟主庫(kù)的備份狀態(tài)
- 4、把主數(shù)據(jù)庫(kù)目錄拷貝到備庫(kù)目錄就可以了:
- 5、還原之前復(fù)制的recovery.conf文件
- 6、停下主庫(kù)備份
- 7、啟動(dòng)備庫(kù)
postgresql數(shù)據(jù)庫(kù)采用主從配置 在主庫(kù)正常從庫(kù)掛掉的情況下 重新對(duì)從庫(kù)配置
😊
配置詳情:
主庫(kù)數(shù)據(jù)文件:100G
壓縮時(shí)間1小時(shí)40分鐘,壓縮后文件大小46G
解壓時(shí)間55分鐘
1 復(fù)制從庫(kù)之前配置的參數(shù)文件
進(jìn)入pgsql 文件下面的data文件
#把pgsql的配置文件復(fù)制到/home 文件下
[root@postgre2 data]# cp pg_hba.conf /home/
[root@postgre2 data]# cp postgresql.conf /home/
[root@postgre2 data]# cp recovery.conf /home
2、停下現(xiàn)有的從庫(kù)
從庫(kù):
/usr/pgsql-11/bin/pg_ctl -D /u01/pgsql/data/ stop --從庫(kù)的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、開(kāi)啟主庫(kù)的備份狀態(tài)
主庫(kù):
[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、把主數(shù)據(jù)庫(kù)目錄拷貝到備庫(kù)目錄就可以了:
主庫(kù):
數(shù)據(jù)庫(kù)目錄壓縮
[root@postgre1 pgsql]# pwd
/u01/pgsql
[root@postgre1 pgsql]# tar -zcvf data.tar.gz data
從庫(kù):
刪除從庫(kù)原來(lái)的data目錄
[root@postgre2 ~]# cd /u01/pgsql/
[root@postgre2 pgsql]# ls
data
[root@postgre2 pgsql]# rm -fr data/
主庫(kù):
數(shù)據(jù)庫(kù)目錄遠(yuǎn)程傳輸
[root@postgre1 pgsql]# sudo scp data.tar.gz root@postgre2:/u01/pgsql/data
從庫(kù):
解壓數(shù)據(jù)庫(kù)目錄
[root@postgre2 ~]# cd /u01/pgsql/
[root@postgre2 pgsql]# tar -zxvf data
刪掉從主庫(kù)拷貝過(guò)來(lái)的postmaster.pid
[root@postgre2 pgsql]# cd data/
[root@postgre2 data]# rm -r postmaster.pid
5、還原之前復(fù)制的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、停下主庫(kù)備份
主庫(kù):
postgres=# select pg_stop_backup();
NOTICE: pg_stop_backup complete, all required WAL segments have been archived
pg_stop_backup
----------------
0/640001F8
7、啟動(dòng)備庫(kù)
從庫(kù):
[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
如果沒(méi)有啟動(dòng)systemctl status postgresql-11或者log日志查看具體問(wèn)題
如果從庫(kù)配置的時(shí)間過(guò)長(zhǎng),最后就會(huì)報(bào)錯(cuò),顯示找不到日志文件
但是只要主從配置好了,數(shù)據(jù)能從主庫(kù)自動(dòng)同步從庫(kù) 就可以忽略錯(cuò)誤
到此這篇關(guān)于PostgreSql從庫(kù)重新配置的詳情的文章就介紹到這了,更多相關(guān)PostgreSql從庫(kù)重新配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- 詳解PostgreSql數(shù)據(jù)庫(kù)對(duì)象信息及應(yīng)用
- postgresql的now()與Oracle的sysdate區(qū)別說(shuō)明
- Postgresql 通過(guò)出生日期獲取年齡的操作
- postgresql 獲取兩個(gè)時(shí)間類型小時(shí)差值案例
- postgresql中時(shí)間轉(zhuǎn)換和加減操作
- postgresql 計(jì)算時(shí)間差的秒數(shù)、天數(shù)實(shí)例
- PostgreSQL TIMESTAMP類型 時(shí)間戳操作
- postgreSQL 非count方法算記錄數(shù)操作