0

Pythonでmongoのreplasetをセットアップするスクリプトを書いています。スクリプトの最初の部分でプロセスを開始し、2 番目の部分でレプリカセットを構成する必要があります。

コマンドラインから、私は通常次のことを行います:

config={_id:"aaa",members:[{_id:0,host:"localhost:27017"},{_id:1,host:"localhost:27018"},{_id:2,host:"localhost:27019",arbiterOnly:true}]}
rs.initiate(config)
rs.status();

そして、rs.status() から、すべてのメンバーが初期化されていることを確認しています。Python スクリプトで同じことをしたいと考えています。

一般的に、mongodb (シャーディングも) のセットアップ スクリプトの適切なリファレンスを探しています。私は彼らのサイトでpythonスクリプトを見ました。これは良い出発点です(ただし、replSetの単一マシンと単一ノードのみ)。すべてを異なるマシンにセットアップする必要があります。

ありがとう

4

3 に答える 3

3

rs.initiate( なしで)実行する(config)と、シェルは実行するコマンドを通知します。この場合、次のようになります。

function (c) {
    return db._adminCommand({replSetInitiate:c});
}

Python では、これは次のようになります。

>>> from pymongo import Connection
>>> c = Connection("morton.local:27017", slave_okay=True)
>>> d.command( "replSetInitiate", c );

cレプリカセット構成であること。http://api.mongodb.org/python/current/api/pymongo/database.html#pymongo.database.Database.commandには、コマンドの呼び出しに関する詳細情報があります。

于 2012-04-23T12:24:00.957 に答える