本地數據遷移到OOS
更新時間 2024-11-06 18:03:37
最近更新時間: 2024-11-06 18:03:37
分享文章
本節主要介紹如何將數據從本地遷移到OOS中。
應用場景
將數據從本地遷移到天翼云OOS的Bucket。
注意在線遷移會占用網絡資源。若您的業務比較重要,建議您對遷移任務設置限速(設置system.conf中的maxThroughput),或在空閑時間啟動遷移任務。
前提條件
- Windows7 及以上版本或 Linux CentOS 7.x 及以上版本。
- Java 1.8 及以上版本。
- 遷移工具所在的服務器可以訪問OOS資源池。
具體操作
確定目標Bucket
在天翼云OOS中創建目標Bucket,具體操作請參見創建存儲桶(Bucket)或PUT Bucket ,用于存放遷移的數據。也可以使用已存在的Bucket。
下載安裝遷移工具
- 下載數據遷移工具。
- 解壓縮安裝包
-
對于Windows客戶端,直接解壓縮遷移工具zip 包即可。
-
對于Linux客戶端,執行 unzip 解壓縮安裝包。
遷移工具解壓后的目錄結果如下:
CTYUN_OOS_Import_versionid |----config |-------log4j2.xml |-------migrate.conf |-------system.conf |----lib |----import.sh |----import.bat
-
修改配置文件
更新遷移任務配置文件
migrate.conf,配置源和目的資源池信息、遷移配置項。您可根據需要配置system.conf和 log4j2.xml文件,具體參數介紹參見常用工具-OOS數據遷移工具-遷移步驟。其中:
- srcType需填寫為:LOCAL,代表本地。
- localFolderPath需要填寫待遷移文件所在的本地目錄,且操作用戶需要對該目錄及文件有讀權限。
- OOS的AccessKeyID和SecretAccessKey需要至少擁有目的Bucket的寫權限。
migrate.conf配置示例如下:
{
"srcType":"LOCAL", #從LOCAL遷移文件(Object)
"localFolderPath":"F:/test/test1/",#本地目錄,請根據實際填寫
"destEndpoint":"oos-cn.ctyunapi.cn", # OOS的Endpoint
"destAccessKey":"AccessKeyID", # OOS的AccessKeyID
"destSecretKey":"SecretAccessKey", # OOS的SecretAccessKey
"destBucket":"BucketName", # OOS的Bucket名稱
"isSkipExistFile":false #是否跳過目標資源池中已有的文件
}
執行遷移
- 對于 Windows 客戶端,執行 import.bat 啟動遷移。
1.打開開始菜單,搜索cmd,打開命令提示符窗口。
2.cd到壓縮工具所在的目錄下,例如 cd c:\CTYUN_OOS_Import_ versionid 。
3.執行import.bat。 - 對于Linux客戶端,進入CTYUN_OOS_Import_ versionid ,執行命令./import.sh啟動遷移。
查看遷移狀態
遷移任務創建后,會生成相應日志記錄遷移情況:
- 遷移日志:migratelog文件夾下生成四種日志:異常日志、成功日志、跳過文件日志、其他日志。
- 運行日志:在logs/migrate文件夾下,根據log4j2.xml配置可生成server.log、error.log、dubug.log等。默認未開啟debug, 不記錄debug.log。
您可通過日志查看遷移失敗的文件,并且可以配置migrate.conf文件中的migrateLogFile參數實現對失敗文件的再次遷移。
說明數據遷移工具支持斷點續傳,如果遷移過程中程序被終止了,可以重新啟動遷移任務,從之前中斷的位置繼續開始遷移。繼續遷移的步驟如下:
1. 保留上次遷移執行過程中產生的backup文件。如果是在另外一臺服務器上重新開始遷移任務,需要將backup文件拷貝到新服務器的遷移工具所在目錄下。
2. (可選)查看nextMarker.txt文件中記錄的上次數據遷移位置。修改migrate.conf,設置srcMarker為上次遷移位置,如果不修改,則可能會造成文件重復遷移。