一.rsync server(172.16.3.226)
成都創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括昆玉網(wǎng)站建設(shè)、昆玉網(wǎng)站制作、昆玉網(wǎng)頁制作以及昆玉網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,昆玉網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到昆玉省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!CentOS 7.2 X64
# yum install -y rsync
# mkdir -p -m 0700 /db/wal_archive
# chown -R postgres.postgres /db/wal_archive
可能存在的問題:
修改目錄/db/wal_archive權(quán)限后仍報(bào)錯如下:
rsync: mkstemp "/.000000010000000000000001.2Z6cX4" (in archive) failed: Permission denied (13)
解決辦法:請查詢 /etc/selinux/config的SELINUX配置項(xiàng):
SELINUX=disabled
2.rsync server(172.16.3.226)
1).修改配置
# vi /etc/rsyncd.conf
[root@localhost wal_archive]# vi /etc/rsyncd.conf
# /etc/rsyncd: configuration file for rsync daemon mode
# See rsyncd.conf man page for more options.
# configuration example:
# uid = nobody
# gid = nobody
# use chroot = yes
# max connections = 4
# pid file = /var/run/rsyncd.pid
# exclude = lost+found/
# transfer logging = yes
# timeout = 900
# ignore nonreadable = yes
# dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
# [ftp]
# path = /home/ftp
# comment = ftp export area
############# new add ##############
[archive]
# destination directory for copy
path = /db/wal_archive
# hosts you allow to access
hosts allow = 172.16.3.225
hosts deny = *
list = true
uid = postgres
gid = postgres
read only = false
[postgres@localhost wal_archive]#
2.啟動服務(wù)
# systemctl start rsyncd
# systemctl enable rsyncd
二、傳輸文件
rync client(172.16.3.225)
1.安裝軟件
# yum install -y rsync
2.建立數(shù)據(jù)庫歸檔目錄
# mkdir -p -m 0700 /db/wal_archive
# chown -R postgres.postgres /db/wal_archive
3.同步腳本配置
1小時(shí)以外的wal同步
sync_archives.sh
#!bin/sh
export PATH=/bin:$PATH
find /db/wal_archive -name '0000*' -type f -mmin 60 | xargs -I{} rsync -avz {} 172.16.3.226::archive
歸檔刪除腳本
兩天以外的wal刪除
del_archives.sh
#!bin/sh
export PATH=/bin:$PATH
find /db/wal_archive -name '0000*' -type f -mtime +2 - delete
# crontab -e
* * * * * /opt/cron/sync_archives.sh
0 1 * * * /opt/cron/del_archives.sh
三、數(shù)據(jù)庫歸檔配置
#------------------------------------------------------------------------------
# WRITE AHEAD LOG
#------------------------------------------------------------------------------
# - Settings -
#wal_level = replica # minimal, replica, or logical
# (change requires restart)
#fsync = on # flush data to disk for crash safety
# (turning this off can cause
# unrecoverable data corruption)
#synchronous_commit = on # synchronization level;
# off, local, remote_write, remote_apply, or on
#wal_sync_method = fsync # the default is the first option
# supported by the operating system:
# open_datasync
# fdatasync (default on Linux)
# fsync
# fsync_writethrough
# open_sync
#full_page_writes = on # recover from partial page writes
#wal_compression = off # enable compression of full-page writes
#wal_log_hints = off # also do full page writes of non-critical updates
# (change requires restart)
#wal_buffers = -1 # min 32kB, -1 sets based on shared_buffers
# (change requires restart)
#wal_writer_delay = 200ms # 1-10000 milliseconds
#wal_writer_flush_after = 1MB # measured in pages, 0 disables
#commit_delay = 0 # range 0-100000, in microseconds
#commit_siblings = 5 # range 1-1000
# - Checkpoints -
#checkpoint_timeout = 5min # range 30s-1d
#max_wal_size = 1GB
#min_wal_size = 80MB
checkpoint_completion_target = 0.9 # checkpoint target duration, 0.0 - 1.0
#checkpoint_flush_after = 256kB # measured in pages, 0 disables
#checkpoint_warning = 30s # 0 disables
# - Archiving -
archive_mode = on # enables archiving; off, on, or always
# (change requires restart)
archive_command = 'cp -an %p > /db/wal_archive/%f' # 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'
archive_timeout = 86400 # force a logfile segment switch after this
# number of seconds; 0 disables
#------------------------------------------------------------------------------
# REPLICATION
#------------------------------------------------------------------------------
# - Sending Server(s) -
# Set these on the master and on any standby that will send replication data.
max_wal_senders = 20 # max number of walsender processes
# (change requires restart)
wal_keep_segments = 1000 # in logfile segments, 16MB each; 0 disables
#wal_sender_timeout = 60s # in milliseconds; 0 disables
#max_replication_slots = 10 # max number of replication slots
# (change requires restart)
#track_commit_timestamp = off # collect timestamp of transaction commit
# (change requires restart)
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。