狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

服務器磁盤或SQL Server/MySQL數據庫在線物理熱備工具Restic

admin
2025年1月9日 22:4 本文熱度 46

Restic 是一款用GO編寫的開源備份程序。它支持主要的操作系統 Linux、macOS、Windows ,以及 FreeBSD、OpenBSD。它可將數據備份至不同的目標存儲上,包括云存儲。Restic 遵循五個設計原則:簡單、快速、可驗證、安全、高效。如今在 github 上已有 23k star,社區也持續在維護中。

實踐是檢驗真理的唯一標準,既然那么好,我們就測試看看。

# CentOS 安裝 Resticwget https://github.com/restic/restic/releases/download/v0.16.3/restic-0.16.3.tar.gztar -zxvf restic-0.16.3.tar.gzcd restic-0.16.3go run build.gomv restic /usr/bin/restic
# Windows 安裝 Restic下載 https://github.com/restic/restic/releases/download/v0.16.3/restic_0.16.3_windows_amd64.zip解壓 restic_0.16.3_windows_amd64.exe , 更名為 restic.exe , 移動到 %SystemRoot%\System32

安裝完成后,第一步我們先確定我們的數據要存儲到哪里,也就是先設置存儲庫(repository)。你可以備份至本地目錄、sftp服務器、rest服務器、OpenStack Swift 容器、Amazon S3 存儲桶、Google Cloud Storage、微軟Azure Blob、阿里云OSS、騰訊云COS等。

?
Linux中物理熱備MySQL
?

創建新的存儲庫(保存備份的目錄),會創建響應的其他目錄,這些目錄存儲備份、一些相應的元數據和加密密鑰。要訪問存儲庫,必須指定密碼,一個存儲庫可以保存多個密鑰。

?mkdir -p /opt/restic-repo/192.168.111.150restic init --repo /opt/restic-repo/192.168.111.150 #自定義密碼,記住!ll /opt/restic-repo/192.168.111.150-r--------   1 root root  155 Feb 13 08:21 configdrwx------ 258 root root 8192 Feb 13 08:21 datadrwx------   2 root root    6 Feb 13 08:21 indexdrwx------   2 root root   78 Feb 13 08:21 keysdrwx------   2 root root    6 Feb 13 08:21 locksdrwx------   2 root root    6 Feb 13 08:21 snapshots

現在我要備份MySQL目錄,指定的 repository 為剛創建的路徑。需要輸入剛才的密碼噢

restic -r /opt/restic-repo/192.168.111.150 --verbose backup /data/mysql3306

備份完成后,可以通過 snapshots 查看目錄中的所有備份記錄

restic -r /opt/restic-repo/192.168.111.150 snapshots

即使MySQL正在運行中,也是可以進行熱備的,不影響數據的寫入。唯一不方便、但也比較安全的一點是:你不能直接查看到備份的明文數據。Restic可以排或包含指定的文件備份,可以對比備份記錄的差異等。


?
Windows中邏輯備份MySQL至Linux存儲庫
?

inux簡單測試過了,現在開始驗證一下怎么在Windows中,將數據備份至Linux中的存儲庫。

在Windows中打開powershell,生成本機密鑰(默認在用戶目錄),再將公鑰添加到linux服務器中,這是為了避免在Windows操作輸入密碼。完成后,創建存儲庫,通過sftp指定Linux服務器及任意路徑。

ssh-keygen -t rsacat C:\Users\<user>\.ssh\id_rsa.pub | ssh root@192.168.111.150 "mkdir -p ~/.ssh;cat >> ~/.ssh/authorized_keys"restic init --repo sftp:root@192.168.111.150:/opt/restic-repo/192.168.111.3

由于powershell的管道設計沒shell好,容易出現問題,我們都盡量避免輸入相應的restic存儲庫密碼。在Windows中創建一個密碼文件(E:\Backup\restic_passfile.conf),里面保存一個明文的存儲庫訪問密碼。萬事俱備,接下來進行備份。

#備份MySQL.\mysqldump -h 127.0.0.1 -P3306 -uroot -pmysql --single-transaction -B devops | restic -r sftp:root@192.168.111.150:/opt/restic-repo/192.168.111.3 backup --password-file E:\Backup\restic_passfile.conf --stdin --stdin-filename devops.sql
#查看存儲庫restic -r sftp:root@192.168.111.150:/opt/restic-repo/192.168.111.3 snapshots

如果打算在Windows中使用壓縮,可安裝gzip。打開網址 https://gnuwin32.sourceforge.net/packages/gzip.htm 下載 Binaries 解壓,拷貝 bin\gzip.exe 到 C:\Windows\System32\。

[Console]::OutputEncoding = [System.Text.Encoding]::GetEncoding("UTF-8").\mysqldump -h 127.0.0.1 -P3306 -uroot -pmysql --single-transaction -B devops | gzip --rsyncable -c | restic -r sftp:root@192.168.111.150:/opt/restic-repo/192.168.111.3 backup --password-file E:\Backup\restic_passfile.conf --stdin --stdin-filename devops.sql.gz

類似的,你可以在Linux或Windows中,使用數據庫相關的邏輯備份工具mongodump、pg_dump 等。

更多Restic 相關命令:

restic -r /opt/restic-repo/192.168.111.3 snapshots # 查看快照restic -r /opt/restic-repo/192.168.111.3 stats  # repo 統計restic -r /opt/restic-repo/192.168.111.3 stats b5365ec9  # 指定 repo 統計restic -r /opt/restic-repo/192.168.111.3 ls b5365ec9  #列出文件信息restic -r /opt/restic-repo/192.168.111.3 list snapshots # blobs|packs|index|snapshots|keys|locks]restic -r /opt/restic-repo/192.168.111.3 diff 4c6d8ea3 188e8af2 # 對比快照restic -r /opt/restic-repo/192.168.111.3 forget 188e8af2 #刪除快照restic -r /opt/restic-repo/192.168.111.3 restore 4c6d8ea3 --target /tmp/ #MySQL恢復文件


?
Windows中物理備份SQLServer至騰訊云COS
?

現在開始驗證一下怎么在Windows中,將SQLServer備份至騰訊云對象存儲COS!Restic 支持備份亞馬遜s3存儲桶,但國內的云廠商是沒有明確說明的,如何設置呢?

我們知道訪問云上存儲桶的命令,大多數云廠商設置的參數基本都差不多,我們只要將restic支持的AWS相關參數的值,改為國內對應云廠商的存儲桶參數值就好。restic備份至阿里云存儲桶OSS已經有人測試過了,我這里就測試如何備份至騰訊云對象存儲COS。

這里需要restic的幾個環境變量AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_DEFAULT_REGION、RESTIC_PASSWORD(或RESTIC_PASSWORD_FILE)、RESTIC_REPOSITORY,主要也是避免在命令行中顯式輸入而報錯。如果在Linux中,可以通過 export 設置變量值,在Windowspowershell中,我們設置并執行如下命令:

$Env:AWS_ACCESS_KEY_ID='XXXXXXXXXXXXX'$Env:AWS_SECRET_ACCESS_KEY='XXXXXXXXXXXXX'#$Env:AWS_DEFAULT_REGION='ap-guangzhou'#$Env:RESTIC_PASSWORD_FILE='E:\restic_passfile.conf'$Env:RESTIC_PASSWORD='XXXXXXXXXXX'$Env:RESTIC_REPOSITORY='s3:https://cos.ap-guangzhou.myqcloud.com/mycos/backup/restic/'

接下來的restic命令使用就非常簡單了,省去了參數的輸入。在 Windows 上,使用--use-fs-snapshot選項將在創建備份時使用 Windows 的卷影復制服務 (VSS)。Restic 將為包含要備份的文件的每個卷透明地創建 VSS 快照。文件是從 VSS 快照而不是常規文件系統中讀取的。這允許備份在備份期間被另一個進程獨占鎖定的文件。在SQLServer中,使用VSS支持需要啟動SQL Server VSS Writer 服務。

restic initrestic --use-fs-snapshot backup E:\MSSQL\Datarestic --use-fs-snapshot backup E:\MSSQL\Data\devops.bakrestic --use-fs-snapshot backup E:\MSSQL\Data\devops.mdfrestic --use-fs-snapshot backup E:\MSSQL\Data --exclude="tempdb.*" --compression maxrestic snapshotsrestic stats 024b70c7restic forget 024b70c7restic restore 024b70c7 --target E:/MSSQL/

restic 的優勢在于物理熱備份,然而當今大多數企業都使用云計算,這類備份工具反而沒有那么好用了。不過,對于一些臨時的數據或文件遷移,restic也是不錯的一種選擇。對于使用命令行管理不方便的,可下周一個簡單的跨平臺Restic GUI——restic-browser。


閱讀原文:原文鏈接


該文章在 2025/1/10 11:07:20 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved