共計(jì) 1353 個(gè)字符,預(yù)計(jì)需要花費(fèi) 4 分鐘才能閱讀完成。
這篇文章主要介紹“pgsql 歸檔日志的配置方法”,在日常操作中,相信很多人在 pgsql 歸檔日志的配置方法問(wèn)題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”pgsql 歸檔日志的配置方法”的疑惑有所幫助!接下來(lái),請(qǐng)跟著丸趣 TV 小編一起來(lái)學(xué)習(xí)吧!
歸檔配置涉及幾個(gè)參數(shù)如下:
# – Archiving –
是否開(kāi)啟歸檔
#archive_mode = off # enables archiving; off, on, or always
# (change requires restart)
歸檔命令,注意 %p %f %% 格式化的含義。
%p 是被歸檔的 redo 文件的路徑,
%f 是被歸檔的 redo 文檔的文件名
%% 是百分號(hào)
#archive_command = # command to use to archive a logfile segment
# placeholders: %p = path of file to archive
# %f = file name only
# e.g. test ! -f /mnt/server/archivedir/%f cp %p /mnt/server/archivedir/%f
超時(shí)強(qiáng)制歸檔,例:如果 10 分鐘數(shù)據(jù)庫(kù)都沒(méi)有什么活動(dòng),一個(gè) redo 文件沒(méi)有寫完,就不會(huì)歸檔,
但是我們希望數(shù)據(jù)庫(kù)至少 10 分鐘要切換一個(gè)日志,則可以使用 archive_timeout
#archive_timeout = 0 # force a logfile segment switch after this
# number of seconds; 0 disables
歸檔配置如下:
假設(shè)存儲(chǔ) redo 歸檔的目錄為 /mnt/server/archivedir/
vi $PGDATA/arch.sh
#!/bin/bash
source /var/lib/pgsql/.bash_profile
test ! -f /pg_arch/$1 cp –preserve=timestamps $2 /pg_arch/$1 ; find /pg_arch/ -type f -mtime +7 -exec rm -f {} \;
chmod 500 $PGDATA/arch.sh
wal_level = replica
archive_mode = on
archive_command = $PGDATA/arch.sh %f %p
解讀:
–preserve=timestamps
拷貝文件時(shí),拷貝文件的時(shí)間戳(包括文件的修改時(shí)間),為什么拷貝時(shí)一定要帶上修改時(shí)間戳呢,假設(shè)產(chǎn)生 redo 很快,歸檔較慢或者歸檔卡死了,延遲了幾天才歸檔,不拷貝舊文件的時(shí)間戳,
實(shí)際上寫入的就是拷貝時(shí)刻的時(shí)間戳,相差會(huì)很大。
find -mtime +7 找到 ARCH 目錄中 7 天前修改的文件,刪除
到此,關(guān)于“pgsql 歸檔日志的配置方法”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注丸趣 TV 網(wǎng)站,丸趣 TV 小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!