すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB for MongoDB:MongoShake を使用した MongoDB インスタンスの一方向同期

最終更新日:Aug 21, 2026

MongoShake は、Alibaba Cloud が開発したオープンソースツールで、データ分析、ディザスタリカバリ、アクティブ/アクティブ レプリケーションなどのユースケースで MongoDB データベース間のデータを同期します。このトピックでは、ApsaraDB for MongoDB インスタンス間のリアルタイム同期を構成する方法について説明します。

MongoShake

MongoShake は、Alibaba Cloud が Go 言語で開発した汎用サービスツールです。MongoDB の操作ログ (oplog) を読み取り、宛先インスタンスでリプレイすることで、MongoDB からデータをレプリケートします。

MongoShake は、データサブスクリプションと消費の機能も提供します。SDK、Kafka、MetaQ と統合し、ログサブスクリプション、データセンター同期、非同期キャッシュエビクションなどのシナリオをサポートします。

説明

詳細については、「MongoShake GitHub リポジトリ」をご参照ください。

サポートされるデータソース

ソース

デスティネーション

ECS インスタンス上のセルフマネージド MongoDB データベース

ECS インスタンス上のセルフマネージド MongoDB データベース

オンプレミスのセルフマネージド MongoDB データベース

オンプレミスのセルフマネージド MongoDB データベース

ApsaraDB for MongoDB インスタンス

ApsaraDB for MongoDB インスタンス

サードパーティクラウド MongoDB データベース

サードパーティクラウド MongoDB データベース

注意事項

必要な権限

ソース

必要な権限

ソース MongoDB インスタンス

readAnyDatabase 権限、local データベースの 読み取り権限、および mongoshake データベースの readWrite 権限。

説明

MongoShake プログラムは、増分同期の開始時に、ソースインスタンスに mongoshake データベースを自動的に作成します。

ターゲット MongoDB インスタンス

readWriteAnyDatabase 権限、またはターゲットデータベースの readWrite 権限。

説明

MongoDB データベースユーザーの作成と権限付与の方法については、DMS を使用した MongoDB データベースユーザーの管理または db.createUser コマンドをご参照ください。

前提条件

  1. 同期パフォーマンスを最適化するために、ソース MongoDB レプリカセットインスタンスが VPC を使用していることを確認してください。クラシックネットワークを使用している場合は、ネットワークタイプを VPC に切り替えてください。詳細については、「インスタンスのネットワークタイプをクラシックネットワークからVPCに切り替える」をご参照ください。

  2. 宛先の MongoDB レプリカセットインスタンスを作成してください。ネットワーク遅延を最小限に抑えるために、宛先インスタンスをソースインスタンスと同じ VPC 内に作成してください。詳細については、「レプリカセットインスタンスの作成」をご参照ください。

  3. MongoShake を実行するための ECS インスタンスを作成してください。ネットワーク遅延を最小限に抑えるために、ECS インスタンスをソースインスタンスと同じ VPC 内に作成してください。詳細については、「ECSインスタンスの作成」をご参照ください。

  4. ECS インスタンスのプライベート IP アドレスを、ソースと宛先の両方の MongoDB インスタンスのホワイトリストに追加し、ECS インスタンスが両方のインスタンスに接続できることを確認してください。詳細については、「ホワイトリストの変更」をご参照ください。

説明

ネットワーク設定が上記の要件を満たさない場合は、ソースと宛先の両方の MongoDB インスタンスにパブリックエンドポイントを申請できます。次に、ECS インスタンスのパブリック IP アドレスを両方の MongoDB インスタンスのホワイトリストに追加して、パブリックエンドポイント経由で同期を実行してください。詳細については、「パブリックエンドポイントの申請」および「ホワイトリストの変更」をご参照ください。

操作手順

この手順では、MongoShake が /test/mongoshake ディレクトリにインストールされていることを前提とします。

  1. ECS インスタンスにログインします。

    説明

    シナリオに基づいてログイン方法を選択できます。詳細については、「ECS サーバーのログイン方法の概要」をご参照ください。

  2. 次のコマンドを実行して MongoShake プログラムをダウンロードし、mongoshake.tar.gz に名前を変更します。

    wget "https://github.com/alibaba/MongoShake/releases/download/release-v2.8.7/mongo-shake-v2.8.7.tgz" -O mongoshake.tar.gz
    説明

    このコマンドは MongoShake 2.8.7 をダウンロードします。最新バージョンをダウンロードするには、releases ページをご参照ください。

  3. 次のコマンドを実行して MongoShake パッケージを /test/mongoshake ディレクトリに展開します。

    tar zxvf mongoshake.tar.gz && mv mongo-shake-v2.8.7 /test/mongoshake && cd /test/mongoshake
  4. vi collector.conf コマンドを実行して、MongoShake の設定ファイル collector.conf を変更します。次の表に主要なパラメーターを示します。

    パラメーター

    説明

    例

    mongo_urls

    ソース MongoDB インスタンスの接続文字列 URI。この例では、データベースアカウントは admin データベース内の test です。

    説明

    mongo_urls = mongodb://test:****@dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717,dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717

    説明

    パスワードにアットマーク (@) を含めることはできません。含めると、接続に失敗します。

    tunnel.address

    ターゲット MongoDB インスタンスの接続文字列 URI。この例では、データベースアカウントは admin データベース内の test です。

    説明

    tunnel.address = mongodb://test:****@dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717,dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717

    説明

    パスワードにアットマーク (@) を含めることはできません。含めると、接続に失敗します。

    sync_mode

    データ同期モード。有効な値:

    • all:フル同期と増分同期

    • full:フル同期のみ

    • incr:増分同期のみ

    説明

    デフォルト値は incr です。

    sync_mode = all

    説明

    collector.conf のパラメーターの一覧については、付録の「collector.conf parameters」セクションをご参照ください。

  5. 次のコマンドを実行して同期タスクを開始し、ログを出力します。

    ./collector.linux -conf=collector.conf -verbose
  6. ログ出力を確認します。次のようなエントリが表示されると、フル同期が完了し、増分同期が開始されたことを意味します。

    [09:38:57 CST 2019/06/20] [INFO] (mongoshake/collector.(*ReplicationCoordinator).Run:80) finish full sync, start incr sync with timestamp: fullBeginTs[1560994443], fullFinishTs[1560994737]

ステータスのモニタリング

増分同期が開始されたら、新しいターミナルウィンドウを開き、次のコマンドを実行します。

cd /test/mongoshake && ./mongoshake-stat --port=9100
説明

mongoshake-stat は Python スクリプトであり、Python 2.7 がインストールされている必要があります。詳細については、Python の公式 Web サイトをご参照ください。

出力例:

./mongoshake-stat --port=9100

  logs_get/sec  |  logs_repl/sec  |  logs_success/sec  |          lsn.time          |        lsn_ack.time        |       lsn_ckpt.time        |         now.time           |   replset
      none      |      none       |        none        |  2019-06-20 10:34:14       |  2019-06-20 10:34:13       |  2019-06-20 10:33:36       |  2019-06-20 10:34:14       |  mgset-10
      545       |      768        |        768         |  2019-06-20 10:34:15       |  2019-06-20 10:34:15       |  2019-06-20 10:34:14       |  2019-06-20 10:34:15       |  mgset-10
      541       |      511        |        511         |  2019-06-20 10:34:15       |  2019-06-20 10:34:15       |  2019-06-20 10:34:14       |  2019-06-20 10:34:16       |  mgset-10
      639       |      512        |        512         |  2019-06-20 10:34:16       |  2019-06-20 10:34:16       |  2019-06-20 10:34:14       |  2019-06-20 10:34:17       |  mgset-10
      543       |      512        |        512         |  2019-06-20 10:34:17       |  2019-06-20 10:34:17       |  2019-06-20 10:34:14       |  2019-06-20 10:34:18       |  mgset-10
      546       |      768        |        768         |  2019-06-20 10:34:19       |  2019-06-20 10:34:19       |  2019-06-20 10:34:14       |  2019-06-20 10:34:19       |  mgset-10
      538       |      512        |        512         |  2019-06-20 10:34:20       |  2019-06-20 10:34:20       |  2019-06-20 10:34:19       |  2019-06-20 10:34:20       |  mgset-10
      550       |      511        |        511         |  2019-06-20 10:34:21       |  2019-06-20 10:34:21       |  2019-06-20 10:34:19       |  2019-06-20 10:34:21       |  mgset-10
      546       |      512        |        512         |  2019-06-20 10:34:22       |  2019-06-20 10:34:22       |  2019-06-20 10:34:19       |  2019-06-20 10:34:22       |  mgset-10
      531       |      512        |        512         |  2019-06-20 10:34:23       |  2019-06-20 10:34:23       |  2019-06-20 10:34:19       |  2019-06-20 10:34:23       |  mgset-10
      547       |      512        |        512         |  2019-06-20 10:34:24       |  2019-06-20 10:34:24       |  2019-06-20 10:34:19       |  2019-06-20 10:34:24       |  mgset-10
      541       |      512        |        512         |  2019-06-20 10:34:24       |  2019-06-20 10:34:24       |  2019-06-20 10:34:19       |  2019-06-20 10:34:25       |  mgset-10

パラメーターの説明:

パラメーター

説明

logs_get/sec

1秒あたりに取得される oplog の数。

logs_repl/sec

1秒あたりに実行される oplog 再生操作の数。

logs_success/sec

1秒あたりに成功した oplog 再生操作の数。

lsn.time

最後に送信された oplog のタイムスタンプ。

lsn_ack.time

書き込み操作が宛先インスタンスによって確認された時点のタイムスタンプ。

lsn_ckpt.time

チェックポイントが永続化された時点のタイムスタンプ。

now.time

現在時刻。

replset

ソースデータベースのレプリカセット名。

admin データベースからのデータ移行

MongoDB では、ロック動作や内部コマンドとの競合によりインスタンスのパフォーマンスが低下する可能性があるため、admin データベースにビジネスデータを保存することは公式には推奨されていません。

MongoShake は、admin データベースから admin 以外のデータベースへのビジネスデータの同期をサポートしています。

これを行うには、手順に従います。ステップ 4 で、collector.conf ファイルを編集する際に、次の設定項目を追加します。

filter.pass.special.db = admin

# admin データベースからすべてのコレクションを newDB に移行します。
transform.namespace = admin:newDB
# または、admin データベースの abc コレクションをターゲットデータベースの def コレクションに移行します。複数のルールを設定できます。
transform.namespace = admin.abc:target.def

付録

表 1. collector.conf パラメーター

カテゴリ

パラメータ

説明

例

該当なし

conf.version

設定ファイルのバージョンです。この値は変更しないでください。

conf.version = 4

グローバルオプション

id

同期タスクの ID です。この値はカスタマイズできます。ログファイル名、チェックポイント情報を保存するデータベース名、および宛先インスタンスのデータベース名に使用されます。

id = mongoshake

master_quorum

高可用性オプション。プライマリおよびスタンバイの MongoShake ノードが同じソースからデータを同期する場合、プライマリ MongoShake ノードでこのパラメーターを true に設定します。

有効な値:

  • true:有効

  • false:無効

説明

デフォルト値は false です。

master_quorum = false

full_sync.http_port

フル同期のステータスを表示するための HTTP ポートです。

説明

デフォルト値は 9101 です。

full_sync.http_port = 9101

incr_sync.http_port

増分同期のステータスを表示するための HTTP ポートです。

説明

デフォルト値は 9100 です。

incr_sync.http_port = 9100

system_profile_port

内部スタック情報を表示するためのプロファイリングポートです。

system_profile_port = 9200

log.level

ログレベルです。有効な値:

  • error:エラーレベルの情報です。

  • warning:警告レベルの情報です。

  • info:現在のシステムステータスに関する情報メッセージです。

  • debug:デバッグ情報です。

デフォルト値は info です。

log.level = info

log.dir

ログファイルと PID ファイルのディレクトリです。このパラメータが設定されていない場合、デフォルトで現在のパスにある logs ディレクトリを使用します。

説明

このパラメータには絶対パスを指定する必要があります。

log.dir = ./logs/

log.file

ログファイルの名前です。この値はカスタマイズできます。

説明

デフォルト値は collector.log です。

log.file = collector.log

log.flush

画面へのログ出力の更新頻度です。有効な値:

  • true:すべてのログエントリを即座に出力します。これはパフォーマンスに影響を与える可能性があります。

  • false:すべてのログエントリが即座に出力されるとは限りません。このオプションはパフォーマンスを向上させます。

説明

デフォルト値は false です。

log.flush = false

sync_mode

データ同期モードです。有効な値:

  • all:フル同期と増分同期を実行します。

  • full:フル同期のみを実行します。

  • incr:増分同期のみを実行します。

説明

デフォルト値は incr です。

sync_mode = all

mongo_urls

ソース MongoDB インスタンスの接続文字列 URI です。この例では、データベースアカウントは test で、admin データベースにあります。

説明

mongo_urls = mongodb://test:****@dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717,dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717

mongo_cs_url

ソースがシャードクラスターインスタンスの場合、ConfigServer (CS) ノードの接続文字列 URI を指定する必要があります。ConfigServer ノードの接続文字列 URI を取得する方法については、シャードのエンドポイントの申請をご参照ください。

この例では、データベースアカウントは test で、admin データベースにあります。

mongo_cs_url = mongodb://test:****@dds-bp19f409d7512****-csxxx.mongodb.rds.aliyuncs.com:3717,dds-bp19f409d7512****-csxxx.mongodb.rds.aliyuncs.com:3717/admin

mongo_s_url

ソースがシャードクラスターインスタンスの場合、少なくとも 1 つの mongos ノードの接続文字列 URI を指定する必要があります。複数の mongos アドレスはカンマ (,) で区切ります。mongos ノードの接続文字列 URI を取得する方法については、シャードのエンドポイントの申請をご参照ください。

この例では、データベースアカウントは test で、admin データベースにあります。

mongo_s_url = mongodb://test:****@s-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717,s-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717/admin

tunnel

同期チャネルタイプです。有効な値:

  • direct:宛先 MongoDB インスタンスに直接データを同期します。

  • rpc:NET/RPC を使用してデータを同期します。

  • tcp:TCP を使用してデータを同期します。

  • file:ファイル転送を使用してデータを同期します。

  • kafka:Kafka を使用してデータを同期します。

  • mock:テスト専用です。データはチャネルに書き込まれません。

説明

デフォルト値は direct です。

tunnel = direct

tunnel.address

宛先のアドレスです。サポートされるアドレス形式は、tunnel タイプによって異なります:

  • tunnel が direct に設定されている場合は、接続先の MongoDB インスタンスの接続文字列 URI を指定します。

  • tunnel が rpc に設定されている場合、宛先インスタンスの RPC 受信側アドレスを指定します。

  • tunnel が tcp に設定されている場合、宛先インスタンスの TCP 受信側アドレスを指定します。

  • tunnel が file に設定されている場合、宛先インスタンスのデータファイルパスを指定します。

  • tunnel が kafka に設定されている場合は、topic@brokers1,brokers2 などの Kafka アドレスを指定します。

  • tunnel が mock に設定されている場合、このパラメーターは空にします。

この例では、データベースアカウントは test で、admin データベースにあります。

tunnel.address = mongodb://test:****@dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717,dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717

tunnel.message

チャネルのデータ型。このパラメーターは、 tunnel が kafka または file に設定されている場合にのみ有効です。有効な値:

  • raw:デフォルトタイプです。データはバッチで書き込みおよび読み取りされます。

  • json: データは Kafka に JSON 形式で書き込まれるため、ユーザーは直接読み取ることができます。

  • bson: データは Kafka に BSON バイナリ形式で書き込まれます。

説明

デフォルト値は raw です。

tunnel.message = raw

mongo_connect_mode

MongoDB インスタンスの接続モード。このパラメーターは、tunnel が direct に設定されている場合にのみ有効です。有効な値:

  • primary:プライマリーノードからデータを取得します。

  • secondaryPreferred:セカンダリノードからデータを取得します。

  • standalone:指定された単一ノードからデータを取得します。

説明

デフォルト値は secondaryPreferred です。

mongo_connect_mode = secondaryPreferred

filter.namespace.black

データ同期のブラックリストを指定します。指定された名前空間は宛先データベースに同期されません。複数の名前空間はセミコロン (;) で区切ります。

説明

名前空間とは、MongoDB のコレクションまたはインデックスの正規名であり、mongodbtest.customer のように、データベース名とコレクション名またはインデックス名を組み合わせたものです。

filter.namespace.black = mongodbtest.customer;testdata.test123

filter.namespace.white

データ同期のホワイトリストを指定します。指定された名前空間のみが宛先データベースに同期されます。複数の名前空間はセミコロン (;) で区切ります。

filter.namespace.white = mongodbtest.customer;test123

filter.pass.special.db

特殊なデータベースの同期を有効にします。デフォルトでは、admin、local、mongoshake、config、system.views などのデータベースは除外されます。要件に応じて、これらのデータベースの同期を有効にできます。複数のデータベース名はセミコロン (;) で区切ります。

filter.pass.special.db = admin;mongoshake

filter.ddl_enable

DDL 同期を有効にするかどうかを指定します。有効な値:

  • true:有効

  • false:無効

説明

ソースがシャードクラスターインスタンスの場合、この機能はサポートされていません。

filter.ddl_enable = false

checkpoint.storage.url

チェックポイントのストレージアドレスです。再開可能な同期をサポートするために使用します。このパラメータが設定されていない場合、プログラムはインスタンスタイプに基づいて次のいずれかのデータベースにチェックポイントを書き込みます:

  • MongoDB レプリカセットインスタンス:mongoshake データベースに書き込まれます。

  • MongoDB シャードクラスターインスタンス:ConfigServer ノードの admin データベースに書き込まれます。

この例では、データベースアカウントは test で、admin データベースにあります。

checkpoint.storage.url = mongodb://test:****@dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717,dds-bp19f409d7512****.mongodb.rds.aliyuncs.com:3717

checkpoint.storage.db

チェックポイントを保存するデータベースの名前です。

説明

デフォルト値は mongoshake です。

checkpoint.storage.db = mongoshake

checkpoint.storage.collection

チェックポイントを保存するコレクションの名前です。プライマリとスタンバイの MongoShake ノードが同じソースからデータを同期する場合、競合を防ぐためにこのコレクション名を変更できます。

説明

デフォルト値は ckpt_default です。

checkpoint.storage.collection = ckpt_default

checkpoint.start_position

同期の開始位置です。このパラメーターは、チェックポイントが見つからない場合にのみ使用されます。形式は YYYY-MM-DDTHH:MM:SSZ です。

説明

デフォルト値は 1970-01-01T00:00:00Z です。

checkpoint.start_position = 1970-01-01T00:00:00Z

transform.namespace

ソースデータベースまたはコレクションの名前を変更し、宛先に同期します。たとえば、ソースインスタンスの database A.collection B の名前を、宛先インスタンスの database C.collection D に変更できます。

transform.namespace = fromA.fromB:toC.toD

フル同期オプション

full_sync.reader.collection_parallel

MongoShake が同時に取得できるコレクションの最大数です。

full_sync.reader.collection_parallel = 6

full_sync.reader.write_document_parallel

MongoShake のコレクションごとの同時書き込みスレッド数です。

full_sync.reader.write_document_parallel = 8

full_sync.reader.document_batch_size

宛先インスタンスにドキュメントを書き込むためのバッチサイズです。たとえば、値が 128 の場合、128 個のドキュメントがバッチ処理されてから書き込まれます。

full_sync.reader.document_batch_size = 128

full_sync.collection_exist_drop

宛先にソースコレクションと同じ名前のコレクションが存在する場合の処理を指定します。有効な値:

  • true:宛先コレクションを削除してから、ソースコレクションを同期します。

    警告

    この操作は宛先コレクションを削除します。続行する前に、バックアップがあることを確認してください。

  • false:宛先データベースに同じ名前のコレクションが検出された場合、エラーを報告して終了します。

full_sync.collection_exist_drop = true

full_sync.create_index

同期完了後にインデックスを作成するかどうかを指定します。有効な値:

  • foreground:フォアグラウンドインデックスを作成します。

  • background:バックグラウンドインデックスを作成します。

  • none:インデックスを作成しません。

full_sync.create_index = none

full_sync.executor.insert_on_dup_update

移行先データベースに重複する _id フィールドが含まれている場合に、INSERT ステートメントを UPDATE ステートメントに変換するかどうかを指定します。有効な値:

  • true:ステートメントを変換します。

  • false:ステートメントを変換しません。

full_sync.executor.insert_on_dup_update = false

full_sync.executor.filter.orphan_document

ソースがシャードクラスターインスタンスの場合、孤立ドキュメントを除外するかどうかを指定します。有効な値:

  • true:孤立ドキュメントを除外します。

  • false:孤立ドキュメントを除外しません。

full_sync.executor.filter.orphan_document = false

full_sync.executor.majority_enable

宛先インスタンスでマジョリティ書き込みを有効にするかどうかを指定します。有効な値:

  • true:マジョリティ書き込みを有効にします。

  • false:マジョリティ書き込みを無効にします。

full_sync.executor.majority_enable = false

増分同期オプション

incr_sync.mongo_fetch_method

増分データを取得する方法です。有効な値:

  • oplog:ソースデータベースから oplog を取得します。

  • change_stream:ソースデータベースから変更イベントを取得します。これは MongoDB 4.0 以降でのみサポートされます。

デフォルト値は oplog です。

incr_sync.mongo_fetch_method = oplog

incr_sync.oplog.gids

クラウドクラスターの双方向レプリケーションを設定するために使用します。

incr_sync.oplog.gids = xxxxxxxxxxxx

incr_sync.shard_key

MongoShake の内部並行処理方法です。このパラメータは変更しないでください。

incr_sync.shard_key = collection

incr_sync.worker

oplog を転送するための同時スレッド数です。ホストのパフォーマンスが十分な場合、この値を増やすことができます。

説明

ソースがシャードクラスターインスタンスの場合、スレッド数はシャード数と等しくなければなりません。

incr_sync.worker = 8

incr_sync.worker.oplog_compressor

データ圧縮を有効にして、ネットワーク帯域幅の消費を削減します。有効な値:

  • none:圧縮なし

  • gzip:gzip 形式でデータを圧縮します

  • zlib:zlib 形式でデータを圧縮します

  • deflate:deflate 形式でデータを圧縮します

説明

このパラメーターは、tunnel パラメーターが direct に設定されていない場合にのみ有効です。tunnel パラメーターが direct に設定されている場合、このパラメーターを none に設定する必要があります。

incr_sync.worker.oplog_compressor = none

incr_sync.target_delay

ソースからの変更がデスティネーションに適用されるまでの遅延時間 (秒) です。このパラメーターを設定することで、誤操作を防ぐことができます。たとえば、incr_sync.target_delay = 1800 と設定すると、30 分の遅延が発生します。

説明

値が 0 の場合、リアルタイム同期を示します。

incr_sync.target_delay = 1800

incr_sync.worker.batch_queue_size

MongoShake の内部キュー設定パラメータです。必要でない限り、これらのパラメータは変更しないでください。

incr_sync.worker.batch_queue_size = 64

incr_sync.adaptive.batching_max_size

incr_sync.adaptive.batching_max_size = 1024

incr_sync.fetcher.buffer_capacity

incr_sync.fetcher.buffer_capacity = 256

MongoDB 同期オプション(direct モードのみ)

incr_sync.executor.upsert

対応する _id または一意のインデックスを持つドキュメントが存在しない場合に、UPDATE ステートメントを INSERT ステートメントに変換するかどうかを指定します。有効な値:

  • true:ステートメントを変換します。

  • false:ステートメントを変換しません。

incr_sync.executor.upsert = false

incr_sync.executor.insert_on_dup_update

対応する _id または一意のインデックスを持つドキュメントがすでに存在する場合に、INSERT 文を UPDATE 文に変換するかどうかを指定します。 有効な値:

  • true:ステートメントを変換します。

  • false:ステートメントを変換しません。

incr_sync.executor.insert_on_dup_update = false

incr_sync.conflict_write_to

同期中に書き込みコンフリクトが発生した場合、競合するドキュメントを記録するかどうかを指定します。有効な値:

  • none:競合するドキュメントを記録しません。

  • db:mongoshake_conflict データベースに競合ログを記録します。

  • sdk:SDK に競合ログを記録します。

incr_sync.conflict_write_to = none

incr_sync.executor.majority_enable

宛先インスタンスでマジョリティ書き込みを有効にするかどうかを指定します。有効な値:

  • true:マジョリティ書き込みを有効にします。

  • false:マジョリティ書き込みを無効にします。

説明

この機能を有効にすると、パフォーマンスに影響を与える可能性があります。

incr_sync.executor.majority_enable = false

よくある質問

MongoShake FAQ をご参照ください。MongoShake の使用中にその他の問題が発生した場合は、GitHub Issues でイシューを作成してください。