【教學】利用 WinRAR 定期備份資料 - 第3頁 - PCZONE 討論區

返回   PCZONE 討論區 > ▲ -- 電 腦 軟 體 討 論 區 > -- 其 他 軟 體 討 論 版


PCZONE 討論區



通知

-- 其 他 軟 體 討 論 版 包括磁碟或檔案管理工具、掃毒軟體、解壓縮軟體、遠端遙控軟體、備份軟體、傳真軟體、手寫或語音等各種軟體使用經驗討論

會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: etsinz 觀看文章
謝謝大大的說明,我這資料庫每天都會產生一個備份檔,請問有沒有辦法設定只縮壓備份檔,不需要縮壓整個目錄,請看以下圖示:

1. 我sql一共設定五個資料庫,所以會產生五個目錄,而每個目錄每天會產生一個bak檔,我需要做的備份是把每日產生的備份檔備份起來,並不需要把整個目錄備份起來。(每日所產生的備份檔的檔案,都會依時間排序來命名)

2. 用自動壓縮程式是否有辦法把產生出來的rar檔存放在每個相同的目錄下(因為我備份軟體已經設定好需備份的目錄),是否有辦法不用利用手動的方式去點擊任何的程式,就只要設定一次之後就可以一直讓程式自動連續運作。

before.bat 和 Aafter.bat 還是要查外層, 不然就事先查最後產生的備份.
check.bat :start 上面加
:check
sleep
if exist E:\TransactionLogbackup\Diff_bak\gonghsi\gonghsi_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak goto start
if not exist E:\TransactionLogbackup\Diff_bak\gonghsi\gonghsi_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak goto check
:start
之後是原來 check.bat :start 後面的內容

dir E:\TransactionLogbackup\Diff_bak\gonghsi | findstr "個檔案" > before.txt
dir E:\TransactionLogbackup\Diff_bak\gonghsi | findstr "個檔案" > after.txt
備份用以下請自行去修改

backup.bat (紅字就是要放哪裡!)
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\CHIComp01\CHIComp01_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >list.txt
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\CHIXMSys\CHIXMSys_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\dingxin\dingxin_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\excel\excel_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\gongshi\gongshi_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\Backup\SQL.rar @list.txt

但是日期格式要依你的系統格式調整, 如果沒動過那就不用
echo %date%
2010/12/09 星期四
0123456789
%date:~0,4%%
從0取4
2010

%date:~5,2%
從5取2
12

%date:~8,2%
從8取2
09

要自動執行控制台排定工作 排程精靈 或是
at /help
task scheduler 服務要開

不過 check.bat 還有一些問題
例如超過一天沒有找到檔案, 把自己退出

改為
:check
sleep

之間加兩行
:check
if %x% gtr 1440 exit
set /A x=%x%+1
sleep


此篇文章於 2010-12-09 07:54 PM 被 bx2aa 編輯。.
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: bx2aa 觀看文章
before.bat 和 Aafter.bat 還是要查外層, 不然就事先查最後產生的備份.
check.bat :start 上面加
:check
sleep
if exist E:\TransactionLogbackup\Diff_bak\gonghsi\gonghsi_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak goto start
if not exist E:\TransactionLogbackup\Diff_bak\gonghsi\gonghsi_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak goto check
:start
之後是原來 check.bat :start 後面的內容

dir E:\TransactionLogbackup\Diff_bak\gonghsi | findstr "個檔案" > before.txt
dir E:\TransactionLogbackup\Diff_bak\gonghsi | findstr "個檔案" > after.txt
備份用以下請自行去修改

backup.bat (紅字就是要放哪裡!)
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\CHIComp01\CHIComp01_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >list.txt
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\CHIXMSys\CHIXMSys_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\dingxin\dingxin_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\excel\excel_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
dir /s /b /a-d r E:\TransactionLogbackup\Diff_bak\gongshi\gongshi_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\Backup\SQL.rar @list.txt

但是日期格式要依你的系統格式調整, 如果沒動過那就不用
echo %date%
2010/12/09 星期四
0123456789
%date:~0,4%%
從0取4
2010

%date:~5,2%
從5取2
12

%date:~8,2%
從8取2
09

要自動執行控制台排定工作 排程精靈 或是
at /help
task scheduler 服務要開

不過 check.bat 還有一些問題
例如超過一天沒有找到檔案, 把自己退出

改為
:check
sleep

之間加兩行
:check
if %x% gtr 1440 exit
set /A x=%x%+1
sleep


大大你好,謝謝大大的指教,如果直接把backup.bat 做自動排程可以嗎?
因為我測試了一下,直接點backup.bat 是可以運作的。
以下是我做修改的程式
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\CHIComp01\CHIComp01_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >list.txt
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\CHIXMSys\CHIXMSys_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >>list.txt
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\dingxin\dingxin_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >>list.txt
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\excel\excel_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >>list.txt
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\gongshi\gongshi_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >>list.txt
"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar @list.txt



現在遇到的問題是 我每次產生出的檔案會是如:dingxin_db_201012102130
就是2010年12月10號21點30分 如上圖 有時的檔名會是
dingxin_db_201012112131
dingxin_db_201012122132
dingxin_db_201012132133
之類的
像這樣子,如果我要把它的"分鐘"也自動備份的話,參數該如何下呢?
我看了一下你的程式碼好像只有"年、月、日"而已。

ps.我這個完整備份是大約三周會做一次,所以每次檔案都是三周產生一次出來。

此篇文章於 2010-12-10 06:25 PM 被 etsinz 編輯。.
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: etsinz 觀看文章
大大你好,謝謝大大的指教,如果直接把backup.bat 做自動排程可以嗎?
因為我測試了一下,直接點backup.bat 是可以運作的。
以下是我做修改的程式
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\CHIComp01\CHIComp01_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >list.txt
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\CHIXMSys\CHIXMSys_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >>list.txt
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\dingxin\dingxin_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >>list.txt
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\excel\excel_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >>list.txt
dir /s /b /a-d E:\TransactionLogbackup\Com_bak\gongshi\gongshi_db_%date:~0,4%%date:~5,2%%date:~8,2%2130.BAK >>list.txt
"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar @list.txt

現在遇到的問題是 我每次產生出的檔案會是如:dingxin_db_201012102130
就是2010年12月10號21點30分 如上圖 有時的檔名會是
dingxin_db_201012112131
dingxin_db_201012122132
dingxin_db_201012132133
之類的
像這樣子,如果我要把它的"分鐘"也自動備份的話,參數該如何下呢?
我看了一下你的程式碼好像只有"年、月、日"而已。

ps.我這個完整備份是大約三周會做一次,所以每次檔案都是三周產生一次出來。
直接用 backup.bat 也可以!
check.bat after.bat before.bat 是為了確認在備份時不會發生 SQL 維護精靈還沒備份結束.

我原本用的
dir /s /b /a-d E:\TransactionLogbackup\Diff_bak\gongshi\gongshi_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
是日期只要對、後面的不管是多少都照樣備份, 請打開 list.txt 就知道!
list.txt 就是要備份的檔案列表.

dir.....*.bak 把檔案含路徑輸出
> 轉向覆蓋 list.txt
>> 附加到 list.txt
所以結果就在 list.txt

dir /s /b /a-d E:\RSS\ps\com\gongshi\dingxin_db_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt

此篇文章於 2010-12-10 09:07 PM 被 bx2aa 編輯。.
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: bx2aa 觀看文章
直接用 backup.bat 也可以!
check.bat after.bat before.bat 是為了確認在備份時不會發生 SQL 維護精靈還沒備份結束.

我原本用的
dir /s /b /a-d E:\TransactionLogbackup\Diff_bak\gongshi\gongshi_tlog_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt
是日期只要對、後面的不管是多少都照樣備份, 請打開 list.txt 就知道!
list.txt 就是要備份的檔案列表.

dir.....*.bak 把檔案含路徑輸出
> 轉向覆蓋 list.txt
>> 附加到 list.txt
所以結果就在 list.txt

dir /s /b /a-d E:\RSS\ps\com\gongshi\dingxin_db_%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt

謝謝大大的說明,目前測試正常,非常感謝大大

另請問大大dir /s /b /a-d r 的r 意思是什麼

假設我設有五個目錄需備份,是不是我該備份的地方就一定要設有五個目錄,不然程式是否會找不到?然後不動作呢?

請問有辦法另外設定自動排程,把做出來的備份壓縮檔,在一定的時間內清掉檔案嗎,就像在sql資料庫裡可以設定一樣,如:只保留幾周最新的備份檔之類的。(因我怕久而久之放太多備份檔,會浪費本機hdd容量,因我已做異地備份,把檔案備份到b地了,所以放在本機的檔案我想只需保留幾周就ok了。)
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: etsinz 觀看文章
謝謝大大的說明,目前測試正常,非常感謝大大

另請問大大dir /s /b /a-d r 的r 意思是什麼

假設我設有五個目錄需備份,是不是我該備份的地方就一定要設有五個目錄,不然程式是否會找不到?然後不動作呢?

請問有辦法另外設定自動排程,把做出來的備份壓縮檔,在一定的時間內清掉檔案嗎,就像在sql資料庫裡可以設定一樣,如:只保留幾周最新的備份檔之類的。(因我怕久而久之放太多備份檔,會浪費本機hdd容量,因我已做異地備份,把檔案備份到b地了,所以放在本機的檔案我想只需保留幾周就ok了。)
r 是不小心按到的吧!

List.txt 是備份內容 只要有確切路徑檔名就會備份.

dir /s /b /a-d E:\RSS\ps\com\gongshi\*%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt

就會把 E:\RSS\ps\com\gongshi\ 目錄下的所有目錄內檔名中含有當天年月日的所有 .bak 通通列入備份的列表中.

"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar @list.txt

在最後一行中加入例如:
"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar @list.txt

if %date:~5,2% LEQ 3 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 1-3month.bat
if %date:~5,2% GEQ 4 if %date:~5,2% LEQ 6 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 4-6month.bat
if %date:~5,2% GEQ 7 if %date:~5,2% LEQ 9 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 7-9month.bat
if %date:~5,2% GEQ 10 if %date:~5,2% LEQ 12 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 10-12month.bat

每年開春手動刪除
1-3month.bat
4-6month.bat
7-9month.bat
10-12month.bat
或是年初多設定一個排程
delete.bat
=============
del 1-3month.bat
del 4-6month.bat
del 7-9month.bat
del 10-12month.bat
=============
或是每次都跑一次 echo del 1-3month.bat >> ??month.bat

上面改為

if %date:~5,2% LEQ 3 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 1-3month.bat && echo del 10-12month.bat >> 1-3month.bat
if %date:~5,2% GEQ 4 if %date:~5,2% LEQ 6 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 4-6month.bat && echo del 1-3month.bat >> 4-6month.bat
if %date:~5,2% GEQ 7 if %date:~5,2% LEQ 9 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 7-9month.bat && echo del 4-6month.bat >> 7-9month.bat
if %date:~5,2% GEQ 10 if %date:~5,2% LEQ 12 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 10-12month.bat && echo del 7-9month.bat >> 10-12month.bat

跑過任何一季的 ?-?month.bat 會清掉上一季的批次檔

排程加入
1-3month.bat
4-6month.bat
7-9month.bat
10-12month.bat
各個檔案要跑的時間點即可!

此篇文章於 2010-12-13 05:27 PM 被 bx2aa 編輯。.
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: bx2aa 觀看文章
r 是不小心按到的吧!

List.txt 是備份內容 只要有確切路徑檔名就會備份.

dir /s /b /a-d E:\RSS\ps\com\gongshi\*%date:~0,4%%date:~5,2%%date:~8,2%*.bak >>list.txt

就會把 E:\RSS\ps\com\gongshi\ 目錄下的所有目錄內檔名中含有當天年月日的所有 .bak 通通列入備份的列表中.

"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar @list.txt

在最後一行中加入例如:
"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar @list.txt

if %date:~5,2% LEQ 3 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 1-3month.bat
if %date:~5,2% GEQ 4 if %date:~5,2% LEQ 6 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 4-6month.bat
if %date:~5,2% GEQ 7 if %date:~5,2% LEQ 9 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 7-9month.bat
if %date:~5,2% GEQ 10 if %date:~5,2% LEQ 12 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 10-12month.bat

每年開春手動刪除
1-3month.bat
4-6month.bat
7-9month.bat
10-12month.bat
或是年初多設定一個排程
delete.bat
=============
del 1-3month.bat
del 4-6month.bat
del 7-9month.bat
del 10-12month.bat
=============
或是每次都跑一次 echo del 1-3month.bat >> ??month.bat

上面改為

if %date:~5,2% LEQ 3 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 1-3month.bat && echo del 10-12month.bat >> 1-3month.bat
if %date:~5,2% GEQ 4 if %date:~5,2% LEQ 6 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 4-6month.bat && echo del 1-3month.bat >> 4-6month.bat
if %date:~5,2% GEQ 7 if %date:~5,2% LEQ 9 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 7-9month.bat && echo del 4-6month.bat >> 7-9month.bat
if %date:~5,2% GEQ 10 if %date:~5,2% LEQ 12 echo del E:\TransactionLogbackup\114_comrar\114com%date:~0,4%%date:~5,2%%date:~8,2%.rar >> 10-12month.bat && echo del 7-9month.bat >> 10-12month.bat

跑過任何一季的 ?-?month.bat 會清掉上一季的批次檔

排程加入
1-3month.bat
4-6month.bat
7-9month.bat
10-12month.bat
各個檔案要跑的時間點即可!


謝謝大大辛苦說明,感謝您為小弟解決壓縮備份問題,非常感謝,請問大大是否可以留個msn聯絡方式,小弟改日若有其它問題,方可請教大大您。
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: etsinz 觀看文章
謝謝大大辛苦說明,感謝您為小弟解決壓縮備份問題,非常感謝,請問大大是否可以留個msn聯絡方式,小弟改日若有其它問題,方可請教大大您。
平時都沒開 MSN 開機時就關掉, 除非很久沒下載微軟網路廣播, 才偶而登入一次.
上一次用好像是一、二年前吧!

有問題發帖發問, 若其他人會, 應該很樂意回答!
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: bx2aa 觀看文章
平時都沒開 MSN 開機時就關掉, 除非很久沒下載微軟網路廣播, 才偶而登入一次.
上一次用好像是一、二年前吧!

有問題發帖發問, 若其他人會, 應該很樂意回答!
了解,謝謝,另詢問大大,你會用cms架站嗎?
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: etsinz 觀看文章
了解,謝謝,另詢問大大,你會用cms架站嗎?
以前有人發過 Joomla 我接著回 Joomla phpBB MySQL 全自動安裝, 那個算CMS嗎?
從空機 "開電源" "放光碟", 全自動安裝到好, 我算會裝嗎? 因為我都沒動一個按鍵和滑鼠, 全自動的, 除了分割硬碟外!

現在討論的內容和 WinRAR 和定期備份沒關了!
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: bx2aa 觀看文章
以前有人發過 Joomla 我接著回 Joomla phpBB MySQL 全自動安裝, 那個算CMS嗎?
從空機 "開電源" "放光碟", 全自動安裝到好, 我算會裝嗎? 因為我都沒動一個按鍵和滑鼠, 全自動的, 除了分割硬碟外!

現在討論的內容和 WinRAR 和定期備份沒關了!
是的,我只是剛好想到有關這方便問題,順便請問一下而已。

回覆


類似的主題
主題 主題作者 討論版 回覆 最後發表
WinRAR 3.9中文版被趨勢科技列為木馬 supermaxfight -- 防 駭 / 防 毒 版 6 2010-01-10 07:54 PM
WinRAR question zooyoung -- 其 他 軟 體 討 論 版 1 2002-07-12 08:39 AM
winrar 解壓縮的問題 vvvvgood -- 其 他 軟 體 討 論 版 18 2002-05-07 08:31 AM
【教學】利用 Linux NAT 做 Static-routes ADJ -- FreeBSD & Linux 討 論 版 0 2002-05-02 10:27 PM
winrar password 麻煩大家了... jstkk -- 其 他 軟 體 討 論 版 2 2001-05-24 10:31 AM






 XML   RSS 2.0   RSS 
本站使用 vBulletin 合法版權程式
站務信箱 : [email protected]

本論壇所有文章僅代表留言者個人意見,並不代表本站之立場,討論區以「即時留言」方式運作,故無法完全監察所有即時留言,若您發現文章可能有異議,請 email :[email protected] 處理。