數據恢復
云數據庫MongoDB提供了多種數據恢復方案,可滿足不同場景下MongoDB數據庫的數據恢復需求。
數據恢復至云數據庫MongoDB實例
將數據恢復至新實例時,請注意以下事項:
新實例的數據庫大版本需與原實例相同。您需要根據原實例的數據庫版本選擇支持部署的可用區。不同數據庫版本的實例,支持部署的可用區不同。關于不同數據庫版本實例的可用區限制,請參見使用限制。
新實例的存儲空間需大于或等于原實例的存儲空間。
如果您升級過數據庫的大版本,舊版本的備份文件將無法恢復到新版本的數據庫中。
恢復數據時新建的實例默認為最新內核小版本。
方案 | 實例限制 | 恢復位置 | 恢復范圍 | 適用場景 |
云盤版分片集群實例 | 原實例 |
| 誤刪了某個集合或文檔。 | |
MongoDB 3.4、4.0或4.2版本的本地盤版副本集實例 說明 實例所在地域等限制請參見使用限制。 | 新實例 | |||
| 新實例 |
說明 僅本地盤版實例支持恢復部分數據庫。 | 對數據的時效性要求不高的場景。 | |
副本集實例 | 新實例 |
說明 僅本地盤版實例支持恢復部分數據庫。 | 將數據還原至某個時間點。 | |
分片集群實例 | 新實例 | 全部數據庫 | ||
MongoDB 5.0及以上的分片集群云盤版實例 | 原實例 | 部分Key | 適用于小部分數據錯亂或意外丟失場景,根據數據的閃回Key可對這部分數據進行回檔,快速恢復數據。 | |
| 新實例 | 全部數據庫 | 適用于數據監管或容災恢復等需求場景,可以使用備份文件將數據恢復到跨地域備份所在地域的新實例。 |
數據恢復至自建數據庫
將數據恢復至自建數據庫時,您需要將云數據庫MongoDB的備份文件下載到本地。如何下載備份文件,請參見下載備份文件。
方案 | 實例限制 | 注意事項 |
| 由于MongoDB一直在迭代更新,舊版本的Mongorestore不能兼容新版本的MongoDB。請選擇合適的Mongorestore版本,以兼容MongoDB,如何選擇Mongorestore版本,請參見mongorestore。 | |
副本集實例,且滿足以下條件:
| 無。 |
常見問題
實例數據可以恢復到的時間范圍,與備份數據的保留天數相關。如果您希望恢復更早之前的數據,請參見長期保留備份。
分片集群云盤版實例可以使用庫表恢復功能將數據恢復至原實例。具體操作,請參見恢復云數據庫MongoDB單個或多個數據庫。
若您的實例不支持通過庫表恢復功能恢復至原實例,可以先將備份數據恢復至新實例,然后依次修改原實例與新實例的連接地址和端口信息,或者通過DTS將新實例的數據遷移至原實例。
修改實例的連接地址和端口,具體操作,請參見修改連接地址和端口。
DTS遷移的具體操作,請參見源為自建MongoDB或云數據庫MongoDB的遷移方案。
已下載的備份文件,不支持直接恢復至云數據庫實例。您可以先將數據恢復至自建數據庫,然后通過DTS遷移至云數據庫MongoDB實例。DTS遷移的具體操作,請參見源為自建MongoDB或云數據庫MongoDB的遷移方案。
您可以通過DTS將實例數據遷移至自建數據庫中。DTS遷移的具體操作,請參見源為自建MongoDB或云數據庫MongoDB的遷移方案。