了解Databases for MongoDB的資料可攜性
資料可攜性服務或工作負載從罕見的重大事故和大規模故障(如服務中斷)中恢復的能力。 這包括影響整個區域的實體災難、資料庫損毀或對工作負載有貢獻的服務遺失。 其影響超出了高可用性設計的處理能力。涉及一組工具和程序,使客戶能夠匯出在不同服務提供者或本地軟體上實施類似工作負載和資料處理所需的數位工件。 它包括在客戶自己的位置複製和儲存服務客戶內容的過程,包括服務用於儲存和處理資料的相關配置。
責任
IBM Cloud®服務提供介面和說明來引導客戶在自己選擇的位置複製和儲存服務客戶內容(包括相關配置)。
然後,客戶負責使用匯出的資料和配置,以便將資料移植到其他基礎架構。 這可能涉及:
- 規劃並執行在不同的雲端供應商或本機軟體上設定備用基礎架構,以提供與IBM服務類似的功能。
- 在備用基礎架構上移植所需應用程式程式碼的規劃和執行,包括客戶應用程式程式碼的適配、部署自動化等。
- 將匯出的資料和配置轉換為備用基礎架構和改編應用程式所需的格式。
有關使用Databases for MongoDB時的責任的更多信息,請參閱 Databases for MongoDB的共享責任。
數據導出流程
匯出數據
Databases for MongoDB提供匯出已使用該服務上傳、儲存和處理的內容的機制。
要匯出MongoDB數據,請使用 Mongo 的 mongodump工具,該工具與下載中的命令列工具捆綁在一起。
您可以依照 MongoDB文件中的步驟匯出整個資料庫或資料庫內的集合。
配置檔
MongoDB將其配置儲存在名為 mongod.conf
的檔案中。 設定資料庫執行個體時,Databases for MongoDB檔案具有下列參數:
# mongod.conf
# for documentation of all options, see:
# http://docs.mongodb.org/manual/reference/configuration-options/
# Where and how to store data.
storage:
dbPath: <data path>
journal:
enabled: true
# engine:
# mmapv1:
wiredTiger:
engineConfig:
cacheSizeGB: <this is set as (memory-1)/2>
# network interfaces
net:
port: <port>
maxIncomingConnections: 65536
bindIp:<MEMBER_IP>
tls:
mode: requireTLS
certificateKeyFile: tls.pem
CAFile: trusted_ca_bundle.crt
# only enable TLS1_2
disabledProtocols: TLS1_0,TLS1_1,TLS1_3
allowConnectionsWithoutCertificates: true
allowInvalidHostnames: false
security:
clusterAuthMode: sendX509
authorization: enabled
keyFile: repl.key
javascriptEnabled: true
#operationProfiling:
replication:
replSetName: replset
oplogSizeMB: 2048
enableMajorityReadConcern: true
setParameter:
opensslCipherConfig: ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
匯出的資料格式
匯出的資料將採用Mongo的 BSON格式。
匯出的資料可以使用 mongorestore 工具上傳到任何其他MongoDB實例,該工具也捆綁在上述工具下載中。
資料所有權
所有導出的資料都被歸類為客戶內容,因此對其應用完整的客戶所有權和許可權利,如 IBM Cloud服務協議 中所述。