初識MongoDB(五)--MongoDBの主従レプリケーション
MongoDBの主従レプリケーションは実は簡単で、主を実行するサーバーでmongodプロセスを開く時、パラメータ--masterを加入すればいい、実行するサーバーでmongodプロセスを開く時、--slaveと--sourceを加入して主を指定すればいい.このように、主データベースの更新時、データはデータベースからコピーされました(ここではログファイルとデータへのアクセス時にユーザーが一時的に考慮しないことを許可します).次に、2台のサーバをシミュレートするために、1台のサーバで2 deamonをオンにします.
CODE:
メインサーバーへのログイン:
CODE:
CODE:
プライマリにテーブルuserを新規作成します
CODE:
サーバーからtestライブラリを表示するには、次の手順に従います.
CODE:
次に、プライマリ・サーバtestライブラリのuserテーブルにデータを挿入するテストを行います.
CODE:
CODE:
転載先:http://www.cnblogs.com/analyzer/articles/1721981.html
参考資料:http://www.mongodb.org/display/DOCS/Replication公式MongoDBレプリケーションの紹介
CODE:
$ mkdir m_master m_slave
$mongodb/bin/mongod --port 28018 --dbpath ~/m_master --master &
$mongodb/bin/mongod --port 28019 --dbpath ~/m_slave --slave --source localhost:28018 &
このようにプライマリスレーブサーバが起動し、netstat-an-tを使用して28018、28019ポートがオープンしているかどうかを確認できます.メインサーバーへのログイン:
CODE:
$ mongodb/bin/mongo --port 28018
MongoDB shell version: 1.2.4-
url: test
connecting to: 127.0.0.1:28018/test
type "help" for help
> show dbs
admin
local
test
> use test
switched to db test
> show collections
ここのホスト上のtestデータは何の表もありません.空です.サーバーから見ても同じです.CODE:
$ mongodb/bin/mongo --port 28019
MongoDB shell version: 1.2.4-
url: test
connecting to: 127.0.0.1:28019/test
type "help" for help
> show dbs
admin
local
test
> use test
switched to db test
> show collections
では、プライマリ・スレーブ・データが想像通りに同期するかどうかを検証します.プライマリにテーブルuserを新規作成します
CODE:
> db
test
>db.createCollection("user");
> show collections
system.indexes
user
>
テーブルuserは既に存在し、testライブラリにはsystemが1つ追加されている.indexesインデックスを格納するためのテーブルサーバーからtestライブラリを表示するには、次の手順に従います.
CODE:
> db
test
> show collections
system.indexes
User
> db.user.find();
>
サーバのtestライブラリからuserテーブルが既に存在します.また、userテーブルが空であることを確認しました.次に、プライマリ・サーバtestライブラリのuserテーブルにデータを挿入するテストを行います.
CODE:
> show collections
system.indexes
user
> db.user.insert({uid:1,name:"Falcon.C",age:25});
> db.user.find();
{ "_id" : ObjectId("4b8226a997521a578b7aea38"), "uid" : 1, "name" : "Falcon.C", "age" : 25 }
>
このとき、サーバのtestライブラリuserテーブルを表示すると、レコードが1つ増えます.CODE:
> db.user.find();
{ "_id" : ObjectId("4b8226a997521a578b7aea38"), "uid" : 1, "name" : "Falcon.C", "age" : 25 }
>
MongoDBにはReplica PairsとMaster-Masterもあります転載先:http://www.cnblogs.com/analyzer/articles/1721981.html
参考資料:http://www.mongodb.org/display/DOCS/Replication公式MongoDBレプリケーションの紹介