1

サーバー イメージの構成を変更しました。新しい構成でサーバーを起動しました。mlcp コピーを使用して、あるサーバーから別のサーバーにすべてのデータを移植できます (同様のスクリプトについては前を参照してください)。トランザクションが発生している間、データを編集することは許可できないと思います。つまり、コピーの開始から新しいサーバーがリンクされるまでの間、古いサーバーでデータを編集することはできません。コピーが開始されて初めて、データを読み取ることができます。

mlcp を使用して更新をプッシュすることはできますか? データの転送中にサーバー上で編集を行うことを許可し、データの整合性を維持することはできますか?

# moves all data in databases from a server to another server
# usage: ./copy.sh someServer.com anotherServer.com 
from=$1
to=$2

# input security database first so that the users are added
mlcp.sh copy -mode local -input_host $from -input_port 8000 \
    -input_username admin -input_password password \
    -input_database Security \
    -output_database Security \
    -output_host $to -output_port 8000 -output_username admin \
    -output_password password

mlcp.sh copy -mode local -input_host $from -input_port 8000 \
    -input_username admin -input_password password \
    -input_database Documents \
    -output_database Documents \
    -output_host $to -output_port 8000 -output_username admin \
    -output_password password
4

1 に答える 1

3

MLCP は、snapshot実行全体で一貫した結果が得られるようにするためのフラグを提供します。

-snapshot <true,false>               Whether to use a consistent
                                     timestamp to fetch data from the
                                     source database

exportと の両方で機能するはずcopyです。

更新のプッシュについて: MLCP を繰り返すことができますがcopy、ブラックアウト期間を設けた方が簡単な場合があります。システムで更新を許可しない期間。ソース側でフォレストを読み取り専用モードにすることで、これを強制できます。

または、データベースの複製を検討することもできます。詳細については、このガイドを参照してください。

http://docs.marklogic.com/guide/database-replication

チッ!

于 2016-12-05T08:04:29.587 に答える