顾美玲勾引管家|日韩黄色成人|国产精品theporn动漫|欧美日日日|国产精品探花在线

專業(yè)只做數(shù)據(jù)庫實(shí)訓(xùn)和認(rèn)證的品牌機(jī)構(gòu)

微信公眾號(hào)新浪微博
免費(fèi)咨詢電話:400-0909-964
當(dāng)前位置: 網(wǎng)站首頁 > pg大講堂 > postgresql技術(shù)大講堂 - 第39講:數(shù)據(jù)庫完全恢復(fù)

postgresql技術(shù)大講堂 - 第39講:數(shù)據(jù)庫完全恢復(fù)

文章來源: 更新時(shí)間:2023/12/21 16:30:25

在線老師點(diǎn)擊咨詢:

最新學(xué)訊:近期OCP認(rèn)證正在報(bào)名中,因考試人員較多請(qǐng)盡快報(bào)名獲取最近考試時(shí)間,報(bào)名費(fèi)用請(qǐng)聯(lián)系在線老師,甲骨文官方認(rèn)證,報(bào)名從速!

我要咨詢


PostgreSQL從小白到專家,是從入門逐漸能力提升的一個(gè)系列教程,內(nèi)容包括對(duì)PG基礎(chǔ)的認(rèn)知、包括安裝使用、包括角色權(quán)限、包括維護(hù)管理、、等內(nèi)容,希望對(duì)熱愛PG、學(xué)習(xí)PG的同學(xué)們有幫助,歡迎持續(xù)關(guān)注CUUG PG技術(shù)大講堂。


第39講:數(shù)據(jù)庫完全恢復(fù)


PostgreSQL第39講:12月23日(周六)19:30,釘釘群(35822460)& 視頻號(hào)(數(shù)據(jù)庫老陳)直播

內(nèi)容1:描述介質(zhì)恢復(fù)

內(nèi)容2:執(zhí)行非歸檔模式下恢復(fù)

內(nèi)容3:執(zhí)行歸檔模式下完全恢復(fù)

內(nèi)容4:執(zhí)行基于表空間的完全恢復(fù)

內(nèi)容5:執(zhí)行只讀數(shù)據(jù)庫恢復(fù)


介質(zhì)恢復(fù)

用于恢復(fù)丟失或損壞的當(dāng)前數(shù)據(jù)文件或控制文件

需要顯式調(diào)用

操作如下:

從備份中恢復(fù)文件

恢復(fù)的文件會(huì)應(yīng)用歸檔日志和在線重做日志進(jìn)行數(shù)據(jù)重構(gòu)


恢復(fù)步驟


執(zhí)行數(shù)據(jù)文件轉(zhuǎn)儲(chǔ)和恢復(fù)

使用操作系統(tǒng)命令tar/cp轉(zhuǎn)儲(chǔ)數(shù)據(jù)文件

使用pg_ctl start對(duì)數(shù)據(jù)文件進(jìn)行恢復(fù)


非歸檔模式恢復(fù)

在非歸檔模式下,必須恢復(fù)數(shù)據(jù)目錄下所有的文件和目錄:

所有$PGDATA目錄下的子目錄 base、global、pg_wal...

所有$PGDATA目錄下的文件 postgresql.conf、pg_hba.conf...


非歸檔模式恢復(fù)優(yōu)缺點(diǎn)

優(yōu)勢

易于執(zhí)行,出錯(cuò)風(fēng)險(xiǎn)低

恢復(fù)時(shí)間是轉(zhuǎn)儲(chǔ)所有文件所需的時(shí)間

缺點(diǎn)

數(shù)據(jù)丟失,必須手動(dòng)重新應(yīng)用

整個(gè)數(shù)據(jù)庫將恢復(fù)到上一次完整關(guān)閉備份的位置


非歸檔模式恢復(fù)


歸檔模式恢復(fù)

完全恢復(fù)

使用wal數(shù)據(jù)或增量備份

將數(shù)據(jù)庫更新到最新的時(shí)間點(diǎn)

應(yīng)用所有wal日志記錄的更改

不完全恢復(fù)

使用備份和wal日志生成數(shù)據(jù)庫的非當(dāng)前版本


完全恢復(fù)

確認(rèn)數(shù)據(jù)庫關(guān)閉

恢復(fù)數(shù)據(jù)文件

如果是全庫備份,哪怕是損壞了一個(gè)數(shù)據(jù)文件,也要轉(zhuǎn)儲(chǔ)備份的所有數(shù)據(jù)文件

如果是單獨(dú)表空間(除了global)備份,哪怕?lián)p壞了表空間下的一個(gè)數(shù)據(jù)文件,也要轉(zhuǎn)儲(chǔ)備份的所有數(shù)據(jù)文件

修改postgresql.conf文件

生成recovery.signal空文件

啟動(dòng)數(shù)據(jù)庫(recovery)


歸檔模式完全恢復(fù)優(yōu)缺點(diǎn)

優(yōu)勢

將所有數(shù)據(jù)恢復(fù)到最新點(diǎn)(故障點(diǎn))

恢復(fù)時(shí)間是轉(zhuǎn)儲(chǔ)數(shù)據(jù)文件和應(yīng)用所有歸檔日志文件所需的時(shí)間

缺點(diǎn)

必須具有自您要從中恢復(fù)的備份以來的所有歸檔日志文件


執(zhí)行一個(gè)基于數(shù)據(jù)庫備份的完全恢復(fù)

示例(恢復(fù)前備份pg_wal目錄下所有文件)

1、使用tar包進(jìn)行恢復(fù)

tar -zvxf /backup/base.tar.gz -C $PGDATA

2、修改postgresql.conf文件

restore_command = 'cp /home/postgres/archives/%f %p'

recovery_target_timeline = 'latest'

3、生成recovery.signal空文件

touch recovery.signal

4、啟動(dòng)數(shù)據(jù)庫

pg_ctl start


時(shí)間線和時(shí)間線歷史文件

timelineId(時(shí)間線)

每當(dāng)做了一次完全或者不完全恢復(fù)后,數(shù)據(jù)庫的時(shí)間線就會(huì)發(fā)生變化,意味著從失敗點(diǎn)后重新開始新的生命軌跡,同時(shí)用時(shí)間線歷史文件來記錄。


timelineId 和 wal文件名關(guān)系

時(shí)間線的改變導(dǎo)致wal名字發(fā)生變化

當(dāng)完成對(duì)數(shù)據(jù)庫的恢復(fù)后,會(huì)產(chǎn)生新的wal文件,其命名規(guī)則為在原來的段文件名字中用新的時(shí)間線替換原來的時(shí)間線,其它不變。


時(shí)間線和時(shí)間線歷史文件

Timeline History File

歷史文件會(huì)在pg_wal中生成,同時(shí)復(fù)制到歸檔目錄下,命名規(guī)則如下所示:

“8-digit new timelineId”.history 比如:00000002.history

時(shí)間線歷史記錄文件至少包含一行,每行由以下三項(xiàng)組成:

timelineId –用于恢復(fù)的歸檔日志的timelineId。

LSN –發(fā)生WAL段切換的LSN位置

reason –人類可讀的時(shí)間線為什么改變的解釋。

比如:postgres> cat /home/postgres/archivelogs/00000002.history

0/A000198before 2020-4-28 12:05:00.861324+00

注意上面1是行號(hào),也代表數(shù)據(jù)庫恢復(fù)過的次數(shù)。這個(gè)文件不要?jiǎng)h除,否則會(huì)影響數(shù)據(jù)庫恢復(fù)。


執(zhí)行一個(gè)基于表空間備份的完全恢復(fù)

PG支持基于表空間(除了pg_global之外)級(jí)別的完全恢復(fù),因?yàn)閜g_global表空間比較特殊,其中包括控制文件,而控制文件不能使用備份的進(jìn)行恢復(fù)。

1、轉(zhuǎn)儲(chǔ)備份的表空間目錄到目標(biāo)位置

cp -rf /backup/PG_12_201909212 /home/postgres/tblspc/

2、轉(zhuǎn)儲(chǔ)backup_lable文件到$PGDATA目錄下

cp /backup/backup_lable $PGDATA

3、創(chuàng)建recovery.signal

4、修改postgresql.conf文件

restore_command = 'cp /home/postgres/archives/%f %p'

recovery_target_timeline = 'latest'

5、啟動(dòng)數(shù)據(jù)庫,表空間所包含的表能夠?qū)崿F(xiàn)完全恢復(fù)

pg_ctl start


只讀數(shù)據(jù)庫的恢復(fù)



執(zhí)行一個(gè)只讀數(shù)據(jù)庫的恢復(fù)

1、把數(shù)據(jù)庫變成只讀狀態(tài)

ALTER DATABASE new_db1 SET default_transaction_read_only=on;

2、單獨(dú)備份new_db1數(shù)據(jù)庫目錄

3、如果new_db1數(shù)據(jù)庫目錄損壞,關(guān)閉數(shù)據(jù)庫,轉(zhuǎn)儲(chǔ)備份的目錄到目標(biāo)位置

4、打開數(shù)據(jù)庫

*PG不支持單個(gè)數(shù)據(jù)庫完全恢復(fù)。

?

CUUG PostgreSQL技術(shù)大講堂系列公開課,往期視頻及文檔,請(qǐng)聯(lián)系CUUG客服。

本文地址:http://m.mudan321.com/pgdjt/35939703230.html 轉(zhuǎn)載請(qǐng)注明!


PostgreSQL入門到精通 100+ 個(gè)學(xué)習(xí)資料

Oracle培訓(xùn)機(jī)構(gòu)

金牌講師<>

冉乃綱-老師CUUG金牌講師
冉老師 CUUG金牌講師 Oracle及RedHat高級(jí)講師、Unix/Linux 資深專家...[詳細(xì)了解老師]

免費(fèi)咨詢上課流程 客服在線中

陳衛(wèi)星-老師CUUG金牌講師
陳老師 CUUG金牌講師 精通Oracle管理、備份恢復(fù)、性能優(yōu)化 11年Ora...[詳細(xì)了解老師]

免費(fèi)咨詢上課流程 客服在線中

選學(xué)校如何選擇適合自己的學(xué)校

CUUG -CHINA UNIX USER GROUP,是國際UNIX組織UNIFORUM的中國代表,是國內(nèi)悠久的專業(yè)UNIX培訓(xùn)機(jī)構(gòu),被譽(yù)為中國UNIX 的搖籃。多年來,以提高教學(xué)質(zhì)量為本,強(qiáng)調(diào)素質(zhì)教育,積極引進(jìn)、消化國外的新技術(shù),有效的結(jié)合中國....[詳情]

一站式服務(wù)(從入學(xué)到就業(yè)一幫到底)

入學(xué)

學(xué)習(xí)

就業(yè)

實(shí)操

食宿
地址:北京市海淀區(qū)田村山南路35號(hào)院17號(hào)樓
課程咨詢: 400-0909-964
企業(yè)服務(wù):137 1818 8639(陳經(jīng)理)
部分信息來源于網(wǎng)絡(luò),如有錯(cuò)誤請(qǐng)聯(lián)系指正!
版權(quán)所有@北京神腦資訊技術(shù)有限公司 (CUUG,中國UNIX用戶協(xié)會(huì)) Copyright 2016 ALL Rights Reserved 京ICP備11008061號(hào)-1