Linux rsync資料定時增量備份

2022-02-21 02:37:46 字數 3300 閱讀 3414

一、安裝rsync服務端

1.檢視是否安裝rsync

ps -ef | grep rsync

系統一般預設已安裝,安裝方法:

yum -y install rsync

2.新增配置檔案

rsync沒有預設配置檔案,需要手動建立/etc/rsyncd.conf

服務端配置檔案/etc/rsyncd.conf 內容如下:設定了兩個同步目錄。

[root@host-10-0-100-156 bin]# cat /etc/rsyncd.conf

pid file=/var/rsync/rsync.pid

port=873

lock file=/var/rsync/lock.log

log file=/var/rsync/rsync.log

[data1]

path=/root/confluence-6.2.3/

use chroot=no

max connections=10

read only=yes

write only=no

list=no

uid=root

gid=root

auth users=rsyncuser

secrets file=/etc/rsync_server.pas

strict modes=yes

hosts allow=10.0.100.156,192.168.2.108,10.0.100.153

ignore errors=yes

timeout=120

[data2]

path=/data/confluence/

use chroot=no

max connections=10

read only=yes

write only=no

list=no

uid=root

gid=root

auth users=rsyncuser

secrets file=/etc/rsync_server.pas

strict modes=yes

hosts allow=10.0.100.156,192.168.2.108,10.0.100.153

ignore errors=yes

timeout=120

引數說明:

[mysql]:模組名,自己定義,可以在下方新增其它模組。須與客戶端執行命令中的模組名一致。

path:要備份的服務端資料夾路徑。

hosts allow:允許的客戶端連線ip。

secrets file:服務端密碼檔案,內容格式為,使用者名稱:密碼。

auth users:有許可權的使用者名稱,與密碼檔案中使用者名稱一致。

3.建立密碼檔案並更改檔案許可權為600

在/etc中建立檔案rsync_server.pas,加入使用者名稱與密碼,內容格式為:使用者名稱:密碼。

vim /etc/rsync_server.pas

例如,本例中rsync_server.pas檔案內容為rsyncuser:123456

然後設定密碼檔案許可權為600

chmod 600 /etc/rsync_server.pas

注意密碼檔案只有設定為600許可權才可以使用,客戶端的密碼檔案也必須為600。

4.啟動rsync

/usr/bin/rsync --daemon --config=/etc/rsyncd.conf

附加:停止rsync

ps -ef | grep rsync

kill -9 程序號

rm -rf /var/rsync/rsync.pid

二、安裝rsync客戶端

1.檢視是否安裝rsync,系統一般預設已安裝,安裝方法:yum -y install rsync(同服務端)。

2.在/etc下建立密碼檔案rsync_client.pas,注意內容只有密碼,且與服務端密碼檔案中的密碼相同。

[root@localhost confluence]# cat /etc/rsync_client.pas    

123456

3.更改密碼檔案許可權為600。

chmod 600 /etc/rsync_client.pas

三、新增定時任務

[root@localhost confluence]# rsync -aqzrtopg --delete rsync: /home/xuli/confluence/confluence_conf/  --password-file=/etc/rsync_client.pas

[root@localhost confluence]# rsync -aqzrtopg --delete rsync: /home/xuli/confluence/confluence_attachments/ --password-file=/etc/rsync_client.pas

命令中的rsyncuser為服務端密碼檔案中配置的使用者名稱;mysql為服務端/etc/rsyncd.conf檔案中的[mysql]模組名,rsync會通過模組名找到對應的備份檔案路徑;/home/oa_daba_backup當前伺服器資料夾路徑,遠端伺服器需要備份的資料夾裡的內容會增量備份到這裡,所以需要提前建好該目錄;/etc/rsync_client.pas為當前伺服器的密碼檔案。

當直接執行上方備份命令時,可以加入-v --progress引數, 即顯示具體備份過程資訊,定時任務中則不需要。

此外,使用crontab -e命令也可以直接配置定時任務,但與vi /etc/crontab不同,不同點如下:

1./etc/crontab中的為系統任務,只有root可以設定,而crontab -e設定的定時任務為使用者任務,設定完成後會將任務自動寫入/var/spool/cron/usename檔案。

2./etc/crontab中的任務需要指定使用者名稱,crontab -e不需要。

二者更多的不同請參考下面**:

附:任務策略:

每天零點執行備份命令

00 00 * * * shell命令

每天零點和12點執行備份命令

00 00,12 * * * shell命令

00 00,12 * * * shell命令

Linux rsync資料定時增量備份

ps ef grep rsync 系統一般預設已安裝,安裝方法 yum y install rsync 沒有親自驗證 rsync沒有預設配置檔案,需要手動建立 etc rsyncd.conf 服務端配置檔案 etc rsyncd.conf 內容如下 global settings pid file ...

資料索引自增

b tree 資料結構索引 從這個資料介面上,細細咀嚼了一下索引自增。如果資料id是自增的情況下,可以看上面圖,資料的整合是很整齊的。前面兩層對應的資料是滿的。但是如果id不是自增的情況,那就不是了。從而導致需要更多前兩層的資料。優點 1.自增,趨勢自增,可作為聚集索引,提公升查詢效率2.節省磁碟空...

mysql mysqldump資料備份和增量備份

本篇文章主要講如何使用shell實現mysql全量,增量備份。增量備份在周一 週六凌晨3點,會複製mysql bin.00000 到指定目錄 而全量備份則使用mysqldump將所有的資料庫匯出,每週日凌晨3點執,並會刪除上週留下的mysq bin.00000 然後對mysql的備份操作會保留在ba...