公司在Azure的Iaas虛擬機上部署有好幾台MySQL資料庫,至於沒有選擇Azure Database for MySQL,是因為預算有限(錢不夠啊!說多了也是淚,坑的還是DBA自己)。選擇了Iaas的話,DBA就必須考慮離線備份(offline backup),以預防災難性故障出現。我們選擇將歷... ...
公司在Azure的Iaas虛擬機上部署有好幾台MySQL資料庫,至於沒有選擇Azure Database for MySQL,是因為預算有限(錢不夠啊!說多了也是淚,坑的還是DBA自己)。選擇了Iaas的話,DBA就必須考慮離線備份(offline backup),以預防災難性故障出現。我們選擇將歷史資料庫備份文件用AzCopy同步到Azure存儲賬戶的Blob存儲上面。下麵簡單的介紹、總結一下如何使用AzCopy將XtraBackup備份上傳到Azure存儲賬號的Blob存儲上。
Linux上的 AzCopy簡介
AzCopy是一個命令行實用程式,AzCopy是用於向/從 Azure Blob 和文件存儲複製數據的命令行實用程式。可在文件系統和存儲帳戶之間或在存儲帳戶之間複製數據。
目前它有兩個版本的 AzCopy 可下載:
AzCopy on Linux 面向 Linux 平臺,它提供 POSIX 樣式的命令行選項。
AzCopy on Windows 提供 Windows 樣式的命令行選項。
關於AzCopy的介紹,官方文檔“使用 Linux 上的 AzCopy 傳輸數據”已經有很詳細的介紹了,如有什麼不清楚的,建議通讀這篇文章。
之前在Linux上安裝AzCopy,必須首先安裝.NET Core,但是從 AzCopy 7.2 版本開始,.NET Core 依賴項隨 AzCopy 包打包在一起。 如果使用的是 7.2 版或更高版本,則安裝.NET Core 不再是先決條件。
其實這篇文章很早之前就存在我的筆記裡面,之前的安裝比較麻煩一下(這裡將之前的筆記部分全部刪除,官方文檔也找不到早期Azcopy版本的介紹使用了),目前最新現在AzCopy V10
AzCopy v10 中的新增功能
· 將文件系統同步到 Azure Blob 存儲,或反之。 使用 azcopy sync <source> <destination>。 非常適合增量複製方案。
· 支持將整個帳戶(僅限 Blob 服務)複製到另一個帳戶。
· 使用新的從 URL 放置塊 API 來支持帳戶到帳戶的複製。 無需向客戶端傳輸數據,因此數據傳輸速度更快。
· 列出或刪除給定路徑中的文件和 Blob。
· 支持在路徑中使用通配符模式,並支持 --exclude 標誌。
· 使用每個 AzCopy 實例創建作業順序和相關的日誌文件。 可以查看和重啟以前的作業,以及恢復失敗的作業。 AzCopy 還會在失敗後自動重試傳輸。
· 提供常規性能改進。
AzCopy的安裝配置
AzCopy不需要安裝。只需要解壓壓縮包,找到對應的azcopy文件就可以使用。 當然,最好將azcopy文件拷貝到系統路徑以方便使用。
AzCopy V8安裝
# wget -O azcopy.tar.gz https://aka.ms/downloadazcopylinux64
# tar -xzvf azcopy.tar.gz
# cd azcopy/
AzCopy V10安裝
# tar -xf azcopy_linux_amd64_10.2.1.tar.gz
# cd azcopy_linux_amd64_10.2.1/
# mv azcopy /usr/bin/
檢查是否安裝了AzCopy
# whereis azcopy
azcopy: /usr/bin/azcopy /usr/lib/azcopy
# locate azcopy
檢查AzCopy的版本
直接輸入AzCopy命令(之前的AzCopy版本沒有查看版本的參數, AzCopy V10有相關查看版本的參數),如下所示:
# azcopy
------------------------------------------------------------------------------
azcopy 7.3.0-netcore Copyright (c) 2018 Microsoft Corp. All Rights Reserved.
------------------------------------------------------------------------------
# azcopy is designed for high-performance uploading, downloading, and copying
data to and from Microsoft Azure Blob, and File storage.
# Command Line Usage:
azcopy --source <source> --destination <destination> [options]
# Options:
[--source-key] [--dest-key] [--source-sas] [--dest-sas] [--verbose] [--resume]
[--config-file] [--quiet] [--parallel-level] [--source-type] [--dest-type]
[--recursive] [--include] [--check-md5] [--dry-run] [--preserve-last-modified-time]
[--exclude-newer] [--exclude-older] [--sync-copy] [--set-content-type] [--blob-type]
[--delimiter] [--include-snapshot] [--block-size-in-mb]
------------------------------------------------------------------------------
For azcopy command-line help, type one of the following commands:
# Detailed command-line help for azcopy --- azcopy --help
# Detailed help for any azcopy option --- azcopy --help source-key
# Command line samples --- azcopy --help sample
You can learn more about azcopy at http://aka.ms/azcopy.
如果是AzCopy V10,它有提供版本參數--version
# azcopy --version
azcopy version 10.2.1
AzCopy的卸載刪除
其實AzCopy不需要安裝,所以使用下麵命令找到相關文件,直接刪除即可
# whereis azcopy
azcopy: /usr/bin/azcopy /usr/lib/azcopy