<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                配置管理的一個重要使命是保證數據的安全性,防止服務器應硬盤損壞、誤操作造成數據無法恢復的災難性后果。因此制定一個完整的備份策略非常重要。 一般來說,備份策略應規定如下幾部分內容:備份頻度、備份方式、備份存放地點、備份責任人、災難恢復檢查措施及規定。 備份頻度、存放地點等內容可以根據自己的實際情況自行制定;本文重點描述備份方式。 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種方法麻煩。 下面具體描述這三種的備份的方法: dump方法 因為需要,需要將Server A 上SVN倉庫 repos1中的項目pro1遷移到Server B 上的SVN倉庫中。 1、復制,做了一下嘗試,重新啟動svn,測試OK 2、先把項目pro1 checkout到本地,然后再將本地的項目 import 到 ServerB的svn倉庫中,但這樣一來,ServerB上的SVN倉庫中 就好比完全是一個新的pro1項目了,也就失去了svn管理的意義了。 下面的方法是在網上找到的,整理了一下: 在進行下面的操作時,請注意備份倉庫數據,以免操作出錯,損壞數據;同時保證需要遷移的項目,都已經commit,以免丟失修改。 1.首先關閉兩臺服務器的svn所有服務,比如(apache、svn),(以避免在進行遷移時又有其他的用戶訪問提交,更新什么的 2.將ServerA上的 項目pro1所在的倉庫進行備份,使用命令: svnadmin dump oldrepos > reposdumpfile 上面的oldrepos表示服務器Server1上需要備份的倉庫,如:/home/svn/svnrepo,reposdumpfile表示一個中轉的文件; 運行完上面的命名后,文件reposdumpfile就存儲了倉庫oldrepos的信息和所有項目; 3.如果需要將Server A上repos1中的所有項目遷移到Server2上,則將reposdumpfile文件直接拷貝到Server2上,然后轉到步驟5; 4.如果我們只需要repos1倉庫中的pro1則我們需還要對reposdumpfile文件進行過濾,命令如下: svndumpfilter include pro1 < reposdumpfile< pro1dumpfile 上面的 include 表示 包含的意思,也就是說,將reposdumpfile中的 pro1 的項目取來放到文件 pro1dumpfile 中;如果使用 exclude 這表示相反的意思,將不是項目pro1的項目存放到文件中去;然后將pro1dumpfile文件拷貝到Server2上; 5.在Server2上運行如下命令,則完成了項目的遷移; 5.1 創建新的svn倉庫 svnadmin create newrepo 5.2 導入數據到倉庫 svnadmin load newrepo < pro1dumpfile 上面的newrepos表示:Server2電腦上的 svn倉庫的路徑 如:/home/svn/repomove 6.最后打開svn服務,這樣就成功的將項目遷移到了其他倉庫中 7.校驗轉移前后文件是否一致 在兩臺服務器上打包之后進行md5校驗 2、svnsync備份 ----------------------- 參閱:http://www.scmbbs.com/cn/svntp/2007/11/svntp4.php 使用svnsync備份很簡單,步驟如下: 1)在備份機上創建一個空庫:svnadmin create Project1 2)更改該庫的鉤子腳本pre-revprop-change(因為svnsync要改這個庫的屬性,也就是要將源庫的屬性備份到這個庫,所以要啟用這個腳本): cd SMP/hooks; cp pre-revprop-change.tmpl pre-revprop-change; chmod 755 pre-revprop-change; vi pre-revprop-change; 將該腳本后面的三句注釋掉,或者干脆將它弄成一個空文件。 3)初始化,此時還沒有備份任何數據: svnsync init file:///home/backup/svn/svnsync/Project1/ http://svntest.subversion.com/repos/Project1 語法是:svnsync init {你剛創建的庫url} {源庫url} 注意本地url是三個斜杠的:/// 4)開始備份(同步): svnsync sync file:///home/backup/svn/svnsync/Project1 5)建立同步腳本 備份完畢后,建立鉤子腳本進行同步。在源庫/hooks/下建立/修改post-commit腳本,在其中增加一行,內容如下: /usr/bin/svnsync sync --non-interactive file:///home/backup/svn/svnsync/Project1 你可能已經注意到上面的備份似乎都是本地備份,不是異地備份。實際上,我是通過將遠程的備份機mount(請參閱mount命令)到svn服務器上來實現的,邏輯上看起來是本地備份,物理上實際是異地備份。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看