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

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


PCZONE 討論區



通知

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

會員
回覆: 【教學】利用 WinRAR 定期備份資料
請問各位大大,我需要做異地備份,假設在a地,每次都有15-20g的資料容量,而每次備份到b地都要花二三天時間(VPN 2M),請問有什麼方法可以讓資料庫自動在每天固定時間自行壓縮成一個縮壓檔,然後我再利用原本的備份軟體備份到B地。(資料庫是sql2000 的,我大約一周做一次完整備份平均會有15-20g容量,而使用資料庫所備份出來的bak檔每次的日期會不一樣,請問有方法自動縮壓過再進行異地備份嗎)

回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
重點是啥資料庫
MSSQL?Oracle?MySQL?
每種資料庫有其資料庫匯出的方式
匯出後靠其它程式壓縮
不就這樣?
unix靠crontable,Windows靠排程
所以,你手頭上有啥?
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: tvirus 觀看文章
重點是啥資料庫
MSSQL?Oracle?MySQL?
每種資料庫有其資料庫匯出的方式
匯出後靠其它程式壓縮
不就這樣?
unix靠crontable,Windows靠排程
所以,你手頭上有啥?
我大陸使用的是windows2003 server 及mssql-2000資料庫

每日差異備份產生資料為:2G

完整備份為:15-20G(因完整備份資料過大,所以我才想使用壓縮方式做備份)




一、我需做異地備份,a(台灣) <----VPN 2M---> b(大陸)

二、我在a地裝syncbackpro備份軟體,b地裝ftpserver軟體,透過vpn使用ftp方式把b地備份至a地(vpn傳輸速度為2m 約150-200k/sec)

三、如在b地 手動執行winrar 壓縮400m 時間約二分鐘 壓縮完容量為40m左右
不壓縮直接透過vpn傳輸400M至a地 需50-60分鐘
傳輸1.6G 約6小時
傳輸12G 約25小時

ps.我是想說有沒有什麼方式 讓資料庫產生出來的檔案自行壓縮,然後我在備份軟體裡設定排程使用備份至a地。
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
你是用啥方式將資料庫匯出?
以我備份MySQL方式而言
1.mysqldump(MySQL自己的匯出工具)
2.rar壓縮
3.curl 丟至FTP主機(curl有Windows版的執行檔)
unix上就排程執行Shell script
Windows上就排程執行Batch script

but...
你的系統光差異就有2G?光資料庫的差異?還是連系統有的沒有的Log?
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: etsinz 觀看文章
ps.我是想說有沒有什麼方式 讓資料庫產生出來的檔案自行壓縮,然後我在備份軟體裡設定排程使用備份至a地。
看何時 MS-SQL 開始備份
就約晚 1 分鐘用 AT 執行 CHECK.bat

例如: MS-SQL 備份到 d:\Backup

準備 sleep.exe 約等待 1 分鐘

c:\bat\

sleep.cs
===================================
using System;
class Sleep
{
static void Main()
{
System.Threading.Thread.Sleep(60000);
}
}
===================================
執行(ps:\v.?.?\ 請依自己的版本修改)
c:\bat>C:\WINDOWS\Microsoft.NET\Framework\v?.?\csc sleep.cs

然後開始編輯幾個批次檔
before.bat
===================================
dir d:\backup | findstr "個檔案" > before.txt
===================================

after.bat
===================================
dir d:\backup | findstr "個檔案" > after.txt
===================================

check.bat
===================================
@ECHO OFF
CLS
echo _____________________________________________________________________________
echo ^| _______ _ _ ______ __ __ ^|
echo ^| ^| ____ \ \ \ / / ^|_____ \ / \ / \ ^|
echo ^| ^| ^| ^| ^| \ \ / / \ ^| / /\ \ / /\ \ ^|
echo ^| ^| ^|___/ / \ \_/ / _____/ / / / \ \ / / \ \ ^|
echo ^| ^| ____ \ ^> _ ^< / _____/ / /____\ \ / /____\ \ ^|
echo ^| ^| ^| \ \ / / \ \ ^| ^| / ________ \ / ________ \ ^|
echo ^| ^| ^|_____^| ^| / / \ \ ^| ^|_____ / / \ \ / / \ \ ^|
echo ^| ^|_________/ /_/ \_\ \_______\ /_/ \_\ /_/ \_\ ^|
echo ^|_____________________________________________________________________________^|
:start
ECHO %TIME%
before.bat
sleep
after.bat
for /f "delims=*" %i in (before.txt) do set str1="%i"
for /f "delims=*" %i in (after.txt) do set str2="%i"
if not "%str1%"=="%str2%" goto start
if "%str1%"=="%str2%" call backup.bat
===================================

backup.bat 把檔案壓縮到 sync 的目錄裏, 壓縮結束刪除檔案或是搬到某個暫存目錄, 隔天執行 check.bat 前先刪除該檔.
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: tvirus 觀看文章
你是用啥方式將資料庫匯出?
以我備份MySQL方式而言
1.mysqldump(MySQL自己的匯出工具)
2.rar壓縮
3.curl 丟至FTP主機(curl有Windows版的執行檔)
unix上就排程執行Shell script
Windows上就排程執行Batch script

but...
你的系統光差異就有2G?光資料庫的差異?還是連系統有的沒有的Log?


我用ms-sql2000內建 Database Backups 計劃做的,並不是mysql哦,我系統資料庫光差異就大約2g了,如果做完整備份的話大約要15g左右,真的是很大,這只是單單是資料庫。
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: tvirus 觀看文章
你是用啥方式將資料庫匯出?
以我備份MySQL方式而言
1.mysqldump(MySQL自己的匯出工具)
2.rar壓縮
3.curl 丟至FTP主機(curl有Windows版的執行檔)
unix上就排程執行Shell script
Windows上就排程執行Batch script

but...
你的系統光差異就有2G?光資料庫的差異?還是連系統有的沒有的Log?



我用ms-sql2000內建 Database Backups 計劃做的,並不是mysql哦,我系統資料庫光差異就大約2g了,如果做完整備份的話大約要15g左右,真的是很大,這只是單單是資料庫。所以我才想要讓資料庫產生出來時自動壓縮,完全不用人去顧

回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: bx2aa 觀看文章
看何時 MS-SQL 開始備份
就約晚 1 分鐘用 AT 執行 CHECK.bat

例如: MS-SQL 備份到 d:\Backup

準備 sleep.exe 約等待 1 分鐘

c:\bat\

sleep.cs
===================================
using System;
class Sleep
{
static void Main()
{
System.Threading.Thread.Sleep(60000);
}
}
===================================
執行(ps:\v.?.?\ 請依自己的版本修改)
c:\bat>C:\WINDOWS\Microsoft.NET\Framework\v?.?\csc sleep.cs

然後開始編輯幾個批次檔
before.bat
===================================
dir d:\backup | findstr "個檔案" > before.txt
===================================

after.bat
===================================
dir d:\backup | findstr "個檔案" > after.txt
===================================

check.bat
===================================
@ECHO OFF
CLS
echo _____________________________________________________________________________
echo ^| _______ _ _ ______ __ __ ^|
echo ^| ^| ____ \ \ \ / / ^|_____ \ / \ / \ ^|
echo ^| ^| ^| ^| ^| \ \ / / \ ^| / /\ \ / /\ \ ^|
echo ^| ^| ^|___/ / \ \_/ / _____/ / / / \ \ / / \ \ ^|
echo ^| ^| ____ \ ^> _ ^< / _____/ / /____\ \ / /____\ \ ^|
echo ^| ^| ^| \ \ / / \ \ ^| ^| / ________ \ / ________ \ ^|
echo ^| ^| ^|_____^| ^| / / \ \ ^| ^|_____ / / \ \ / / \ \ ^|
echo ^| ^|_________/ /_/ \_\ \_______\ /_/ \_\ /_/ \_\ ^|
echo ^|_____________________________________________________________________________^|
:start
ECHO %TIME%
before.bat
sleep
after.bat
for /f "delims=*" %i in (before.txt) do set str1="%i"
for /f "delims=*" %i in (after.txt) do set str2="%i"
if not "%str1%"=="%str2%" goto start
if "%str1%"=="%str2%" call backup.bat
===================================

backup.bat 把檔案壓縮到 sync 的目錄裏, 壓縮結束刪除檔案或是搬到某個暫存目錄, 隔天執行 check.bat 前先刪除該檔.
謝謝大大辛苦的說明,但是不好意思,有點看不太懂呢?本人對程式不了解= = 你寫的是java的語言嗎

此篇文章於 2010-12-09 01:41 PM 被 etsinz 編輯。.
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: etsinz 觀看文章
不好意思,有點看不太懂呢?本人對程式不了解= =
就是把五個檔案放到
C:\BAT 下
sleep.cs
before.bat
after.bat
check.bat
backup.bat <====== 你自己要把檔案壓縮和放到哪都寫在這裡面

然後開 cmd (命令提示字元) 到提示符後出現 c:\BAT>
輸入
C:\WINDOWS\Microsoft.NET\Framework\v?.?\csc sleep.cs
因為不清楚你所安裝的 .NET Framework 版本
所以用 v?.?
請先用檔案總管找出 c:\windows\Microsoft.NET\Framework 目錄下的 v?.? 內有 csc.exe 檔案 把 v.?.?...... 替換 上面命令的 v?.?

看是用排程執行 check,bat 或是 AT 命令加進去.
但是時間要比 備份計畫晚個一分鐘執行!

before 和 after 是把該目錄檔案大小儲存到 檔案
然後讀出來比對相差一分鐘的內容如果不同就重新來一次.
相同就執行 backup.bat
backup.bat 就是用壓縮軟體把
E:\TransactionLogbackup\Com_bak 目錄壓縮起來
"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\Backup\SQL.rar E:\TransactionLogbackup\Com_bak

放到 E:\Backup\裏面 命名為 SQL.rar
上傳的附加檔案
檔案類型: rar BAT.rar (882 Byte, 4 次觀看)
回覆
會員
回覆: 【教學】利用 WinRAR 定期備份資料
引用:
作者: bx2aa 觀看文章
就是把五個檔案放到
C:\BAT 下
sleep.cs
before.bat
after.bat
check.bat
backup.bat <====== 你自己要把檔案壓縮和放到哪都寫在這裡面

然後開 cmd (命令提示字元) 到提示符後出現 c:\BAT>
輸入
C:\WINDOWS\Microsoft.NET\Framework\v?.?\csc sleep.cs
因為不清楚你所安裝的 .NET Framework 版本
所以用 v?.?
請先用檔案總管找出 c:\windows\Microsoft.NET\Framework 目錄下的 v?.? 內有 csc.exe 檔案 把 v.?.?...... 替換 上面命令的 v?.?

看是用排程執行 check,bat 或是 AT 命令加進去.
但是時間要比 備份計畫晚個一分鐘執行!

before 和 after 是把該目錄檔案大小儲存到 檔案
然後讀出來比對相差一分鐘的內容如果不同就重新來一次.
相同就執行 backup.bat
backup.bat 就是用壓縮軟體把
E:\TransactionLogbackup\Com_bak 目錄壓縮起來
"%ProgramFiles%\WinRAR\rar" a -r -y -o+ -m5 E:\Backup\SQL.rar E:\TransactionLogbackup\Com_bak

放到 E:\Backup\裏面 命名為 SQL.rar
謝謝大大的說明,我這資料庫每天都會產生一個備份檔,請問有沒有辦法設定只縮壓備份檔,不需要縮壓整個目錄,請看以下圖示:

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

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





回覆


類似的主題
主題 主題作者 討論版 回覆 最後發表
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] 處理。