時(shí)間:2024-03-08 08:50作者:下載吧人氣:18
前言
最近工作上使用的數(shù)據(jù)庫(kù)一直是Postgresql,這是一款開源的數(shù)據(jù)庫(kù),而且任何個(gè)人可以將該數(shù)據(jù)庫(kù)用于商業(yè)用途。在使用Postgresql的時(shí)候,讓我最明顯的感覺就是這數(shù)據(jù)庫(kù)做的真心好,雖然說(shuō)數(shù)據(jù)庫(kù)的安裝包真的很小,但是性能和操作的便捷是一點(diǎn)也不輸給其他商業(yè)的大型數(shù)據(jù)庫(kù),另外在命令行界面下對(duì)該數(shù)據(jù)庫(kù)直接進(jìn)行操作的感覺真的是很爽。在使用數(shù)據(jù)庫(kù)的時(shí)候,我們作為小公司的數(shù)據(jù)庫(kù)管理員有一項(xiàng)工作是不可能避免的,那就是數(shù)據(jù)的備份和恢復(fù)問題。PostgreSQL雖然各個(gè)方面的有點(diǎn)很多,但是在數(shù)據(jù)庫(kù)備份這方面,它是不支持增量備份的,這點(diǎn)確實(shí)讓人覺得很是可惜啊。不過,瑕不掩瑜,總的來(lái)說(shuō)這是一款很好的數(shù)據(jù)庫(kù)軟件。
之前,我們?cè)?《Postgresql主從異步流復(fù)制方案》 一節(jié)中,部署了Postgresql的主從異步流復(fù)制環(huán)境。主從復(fù)制的目的是為了實(shí)現(xiàn)數(shù)據(jù)的備份,實(shí)現(xiàn)數(shù)據(jù)的高可用性和容錯(cuò)行。下面主要簡(jiǎn)單地介紹下我們運(yùn)維Postgresql數(shù)據(jù)庫(kù)時(shí)的場(chǎng)景備份與恢復(fù)方案。
增量備份
PostgreSQL在做寫入操作時(shí),對(duì)數(shù)據(jù)文件做的任何修改信息,首先會(huì)寫入WAL日志(預(yù)寫日志),然后才會(huì)對(duì)數(shù)據(jù)文件做物理修改。當(dāng)數(shù)據(jù)庫(kù)服務(wù)器掉重啟時(shí),PostgreSQL在啟動(dòng)時(shí)會(huì)首先讀取WAL日志,對(duì)數(shù)據(jù)文件進(jìn)行恢復(fù)。因此,從理論上講,如果我們有一個(gè)數(shù)據(jù)庫(kù)的基礎(chǔ)備份(也稱為全備),再配合WAL日志,是可以將數(shù)據(jù)庫(kù)恢復(fù)到任意時(shí)間點(diǎn)的。
上面的知識(shí)點(diǎn)很重要,因?yàn)槲覀儓?chǎng)景的增量備份說(shuō)白了就是通過基礎(chǔ)備份 + 增量WAL日志 進(jìn)行重做恢復(fù)的。
增量備份設(shè)置
為了演示相關(guān)功能,我們基于 《Postgresql主從異步流復(fù)制方案》 一節(jié)中的環(huán)境pghost1服務(wù)器上,創(chuàng) 建相關(guān)管理目錄
切換到 postgres 用戶下
mkdir -p /data/pg10/backups mkdir -p /data/pg10/archive_wals
網(wǎng)友評(píng)論