到目前,咱們完成了SQL Server備份還原專題系列八篇月報分享:三種常見的數據庫備份、備份策略的制定、查找備份鏈、數據庫的三種恢復模式與備份之間的關係、利用文件組實現冷熱數據隔離備份方案、如何監控備份還原進度、阿里雲RDS SQL自動化遷移上雲的一種解決方案以及上個月分享的RDS SDK實現數據庫遷移上阿里雲,本期咱們分享如何將用戶線下或者ECS上自建實例級別數據庫一鍵遷移上阿里雲RDS SQL Server。python
在咱們上一個月分享的RDS SDK實現數據庫遷移上阿里雲RDS SQL Server方案中,咱們實現瞭如何將用戶線下或者ECS上自建的SQL Server實例中的一個用戶數據庫自動化遷移上雲到RDS SQL Server,話句話說,它實現的是數據庫級別的遷移上雲方案,即每次遷移上雲用戶線下一個數據庫。數據庫
可是,有的用戶可能會遇到這樣的場景,個人線下有幾十上百SQL Server實例,每一個實例又有幾十上百個數據庫,總共就有成千上萬個數據庫遷移上雲。若是是數據庫級別的遷移上雲方案顯得力不從心,效率低下。爲了解決用戶大批量數據庫遷移上雲RDS for SQL Server,簡化上雲操做步驟,提升上雲效率,實例級別數據庫上雲RDS SQL Server是咱們迫切須要解決場景。阿里雲
因爲在前一個月分享的RDS SDK實現數據庫遷移上阿里雲RDS SQL Server中,咱們已經實現了單個數據庫遷移上雲方法,所以實現實例級別的遷移上雲咱們能夠採用以下方案:spa
將用戶線下實例上全部的數據庫全量備份文件上傳到OSS的一個文件夾中ip
遍歷OSS上該文件夾全部的數據庫備份文件get
每個備份文件生成一個遷移上雲任務文件上傳
輸入參數it
基於以上的分析,咱們的實現方法須要包含以下六個輸入參數,以及這六個輸入參數的解析參見下表:自動化
準備工做社區
參見上一個月的月報分享MSSQL · 最佳實踐 · RDS SDK實現數據庫遷移上阿里雲RDS SQL Server中的準備工做部分。
代碼實現
在本文,咱們使用python版RDS SDK實現數據庫遷移上雲RDS SQL Server,固然你也可使用C#版、Java版等其餘版本,詳細的代碼實現以下:
固然,以上代碼,你也能夠去下載以上python腳本。
使用方法
咱們從如下三個方面簡要介紹下如何使用實例級別一鍵遷移上雲:
查看Help
一個例子
輸出結果
查看Help
你只須要使用-h來查看腳本的使用方法:
一個例子
如下是一個具體的例子:
輸出結果
執行以上命令之後的結果輸出,分爲兩個部分:
第一部分輸入參數:展現全部你的輸入參數,以便查詢輸入錯誤
第二部分提示信息:告訴你,哪個備份文件會被遷移到哪一個實例的哪個數據庫 以下的一個實例的輸出信息:
利用本篇文章,咱們能夠輕鬆實現用戶線下或者ECS自建的SQL Server實例級別數據庫一鍵遷移上雲,以此來極大的提升遷移上雲效率,簡化操做,大大提高了用戶遷移上雲體驗。
本文做者:db匠
本文爲雲棲社區原創內容,未經容許不得轉載。