Rate this post

Các phương pháp sao chép MongoDB được sử dụng để sao chép thành viên thành các tập hợp bản sao.

các bài viết liên quan:

#1. rs.add(host, arbiterOnly)

Phương thức add sẽ thêm một thành viên vào nhóm bản sao được chỉ định. Chúng tôi được yêu cầu kết nối với tập hợp chính của tập hợp bản sao cho phương pháp này. Kết nối với trình bao sẽ bị chấm dứt nếu phương thức sẽ kích hoạt một cuộc bầu cử sơ bộ. Ví dụ – nếu chúng tôi cố gắng thêm một thành viên mới có mức độ ưu tiên cao hơn thành viên chính. Lỗi sẽ được phản ánh bởi trình bao mongo ngay cả khi thao tác thành công.

Ví dụ:

Trong ví dụ sau, chúng tôi sẽ thêm một secondary member với phiếu bầu mặc định.

rs.add( { host: "mongodbd4.example.net:27017" } )  

Tên máy chủ

rs.add( "mongodbd4.example.net:27017" )  

#2. rs.addArb(host)

Chúng tôi có thể thêm một host mới vào một bản sao hiện có được đặt tại máy chủ lưu trữ được chỉ định.

Ví dụ

mongod --bind_ip localhost,My-Example-<Associated-Hostname>  

Nếu bạn muốn kết nối với phiên bản này, tên máy chủ hoặc địa chỉ IP liên kết 198.52.100.2 của nó phải được chỉ định bởi máy khách từ xa:

mongo --host My-Example-<Associated-Hostname>  
mongo --host 198.52.100.2  

# 3. rs.conf ()

Phương thức conf được sử dụng để lấy một tài liệu có chứa cấu hình của tập bản sao hiện tại.

Rs.conf () kết thúc cấu hình lệnh replSetGetConfig.

Ví dụ

Tập lệnh sau hiển thị tài liệu cấu hình của một tập hợp bản sao bao gồm tập hợp con của các cài đặt này:

{  
  _id: <string>,  
  version: <int>,  
  protocolVersion: <number>,  
  writeConcernMajorityJournalDefault: <boolean>,  
  configsvr: <boolean>,  
  members: [  
    {  
      _id: <int>,  
      host: <string>,  
      arbiterOnly: <boolean>,  
      buildIndexes: <boolean>,  
      hidden: <boolean>,  
      priority: <number>,  
      tags: <document>,  
      slaveDelay: <int>,  
      votes: <number>  
                        }, ], settings: {  
    chainingAllowed : <boolean>,  
    heartbeatIntervalMillis : <int>,  
    heartbeatTimeoutSecs: <int>,  
    electionTimeoutMillis : <int>,  
    catchUpTimeoutMillis : <int>,  
    getLastErrorModes : <document>,  
    getLastErrorDefaults : <document>,  
    replicaSetId: <ObjectId>  
  }  
}  

#4. rs.initiate(configuration)

Phương thức khởi tạo một tập hợp bản sao. Phương pháp này có thể coi một tài liệu chứa cấu hình rs.initiate () của một tập hợp bản sao, nhưng đó là tùy chọn.

Ví dụ

Ví dụ sau đây khởi tạo một tập hợp bản sao mới với ba thành viên khác nhau.

{  
   _id: "JTPReplSet",  
   version: 1,  
   members: [  
      { _id: 0, host : "mongodb0.example.net:27017" },  
      { _id: 1, host : "mongodb1.example.net:27017" },  
      { _id: 2, host : "mongodb2.example.net:27017" }  
   ]  
}  

# 5. rs.reconfig(configuration, force)

Như tên cho thấy, phương pháp được sử dụng để cấu hình lại một tập hợp bản sao hiện có. Nó sẽ ghi đè lên tất cả cấu hình bộ bản sao hiện có. Chúng ta phải kết nối với bộ bản sao chính để chạy phương thức này.

Các ví dụ

Một tập hợp bản sao có tên rs0 có cấu hình sau:

{  
   "_id" : "rs0",  
   "version" : 1,  
   "protocolVersion" : NumberLong(1),  
   "members" : [  
      {  
         "_id" : 0,  
         "host" : "mongodb0.example.net:27017",  
         "arbiterOnly" : false,  
         "buildIndexes" : true,  
         "hidden" : false,  
         "priority" : 1,  
         "tags" : {  
  
         },  
         "slaveDelay" : NumberLong(0),  
         "votes" : 1  
      },  
      {  
         "_id" : 1,  
         "host" : "mongodb1.example.net:27017",  
         "arbiterOnly" : false,  
         "buildIndexes" : true,  
         "hidden" : false,  
         "priority" : 1,  
         "tags" : {  
  
         },  
         "slaveDelay" : NumberLong(0),  
         "votes" : 1  
      },  
      {  
         "_id" : 2,  
         "host" : "mongodb2.example.net:27017",  
         "arbiterOnly" : false,  
         "buildIndexes" : true,  
         "hidden" : false,  
         "priority" : 1,  
         "tags" : {  
  
         },  
         "slaveDelay" : NumberLong(0),  
         "votes" : 1  
      }  
   ],  
   "settings" : {  
      "chainingAllowed" : true,  
      "heartbeatIntervalMillis" : 2000,  
      "heartbeatTimeoutSecs" : 10,  
      "electionTimeoutMillis" : 10000,  
      "catchUpTimeoutMillis" : 2000,  
      "getLastErrorModes" : {  
  
      },  
      "getLastErrorDefaults" : {  
         "w" : 1,  
         "wtimeout" : 0  
      },  
      "replicaSetId" : ObjectId("58858acc1f5609ed986b641b")  
   }  
}  

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now