svn備份方式對比分析

2021-07-14 16:49:34 字數 1680 閱讀 2835

svn備份方式對比分析

一般採用三種方式:

1、svnadmin dump

2、svnadmin hotcopy

3)svnsync

注意,svn備份不宜採用普通的檔案拷貝方式(除非你備份的時候將庫暫停),如copy、rsync命令。

曾經用rsync命令來做增量和全量備份,在季度備份檢查審計中,發現備份出來的庫大部分都不可用,因此最好是用svn本身提供的功能來進行備份。

優缺點分析:

第一種svnadmin dump是官方推薦的備份方式,優點是比較靈活,可以全量備份也可以增量備份,並提供了版本恢復機制。

缺點是:如果版本比較大,如版本數增長到數萬、數十萬,那麼dump的過程將非常慢;備份耗時,恢復更耗時;不利於快速進行災難恢復。

個人建議在版本數比較小的情況下使用這種備份方式。

第二種svnadmin hotcopy原設計目的估計不是用來備份的,只能進行全量拷貝,不能進行增量備份;

優點是:備份過程較快,災難恢復也很快;如果備份機上已經搭建了svn服務,甚至不需要恢復,只需要進行簡單配置即可切換到備份庫上工作。

缺點是:比較耗費硬碟,需要有較大的硬碟支援(俺的備份機有1tb空間,呵呵)。

第三種svnsync實際上是製作2個映象庫,當乙個壞了的時候,可以迅速切換到另乙個。不過,必須svn1.4版本以上才支援這個功能。

優點是:當製作成2個映象庫的時候起到雙機實時備份的作用;

缺點是:當作為2個映象庫使用時,沒辦法做到「想完全拋棄今天的修改恢復到昨晚的樣子」;而當作為普通備份機制每日備份時,操作又較前2種方法麻煩。

svnadmin dump方式

svn遷移需要做如下操作:

1. 將原來的repository匯出為乙個檔案dumpfile 。

#svnadmin dump 原先的repos的目錄路徑(/repository/directory) > dumpfile

#svnadmin dump /opt/svn/iitshare/ > /var/tmp/iitshare_20130626

2. 在另外一台機器上配置同樣的svn伺服器。

參考:linux svn安裝及配置**教程

3. 將dumpfile匯入到新的repository 目錄中。

#svnadmin load 新建的repos的目錄路徑(/repository/directory) < dumpfile

#svnadmin load /opt/svn/iitshare/ < /var/tmp/iitshare_20130626

4. 將原先伺服器的配置檔案備份後複製到新伺服器中

#/opt/svn/iitshare/conf目錄下

authz、passwd、svnserve.conf檔案

svnadmin hotcopy方法

1. 備份

#svnadmin hotcopy /opt/svn/iitshare/ /var/tmp/iitshare_20130626 –clean-logs

如果你傳遞–clean-logs選項,svnadmin會執行熱拷貝操作,然後刪除不用的berkeley db日誌檔案。

你可以在任何時候執行這個命令得到乙個版本庫的安全拷貝,不管其它程序是否使用這個版本庫。

2. 還原

#svnadmin hotcopy /var/tmp/iitshare_20130626 /opt/svn/iitshare/

io對比分析

1 同步阻塞io 使用者執行緒通過系統呼叫read發起io讀操作,由使用者空間轉到核心空間。核心等到資料報到達後,然後將接收的資料拷貝到使用者空間,完成read操作。使用者執行緒使用同步阻塞io模型的偽 描述為 2同步非阻塞io 使用者執行緒系統系統呼叫read 後直接返回,然後通過不斷輪訓的方式,...

開源License對比分析

bsd開源協議 original bsd license freebsd license original bsd license bsd開源協議是乙個給於使用者很大自由的協議。基本上使用者可以 為所欲為 可以自由的使用,修改源 也可以將修改後的 作為開源或者專有軟體再發布。但 為所欲為 的前提當你...

開源License對比分析

bsd開源協議 original bsd license freebsd license original bsd license bsd開源協議是乙個給於使用者很大自由的協議。基本上使用者可以 為所欲為 可以自由的使用,修改源 也可以將修改後的 作為開源或者專有軟體再發布。但 為所欲為 的前提當你...