MongoDB 中的寫入關注錯誤
使用多數寫入關注向MongoDB 插入資料時,可能會遇到以下錯誤:
No write concern mode named 'majority`' found in replica set configuration
出現此錯誤是因為副本集配置不包含名為的寫關注模式大多數。
解決錯誤
要解決此錯誤,請將多數寫入關注模式加入副本集配置中。大多數寫入關注確保在確認寫入之前資料已寫入大多數副本集成員。
範例連接字串
以下連接字串包含大多數寫入關注點:
mongodb+srv://user:[email protected]/DBname?retryWrites=true&w=majority
修改資料庫連接
更新資料庫連線設定功能以新增多數寫入注意:
import ( "context" "time" "go.mongodb.org/mongo-driver/mongo" ) var DbConn *mongo.Client func SetupDB(conn_str string) { var err error opts := options.Client().ApplyURI(conn_str).SetWriteConcern(options.Majority()) DbConn, err = mongo.NewClient(opts) if err != nil { log.Fatal(err) } ctx, _ := context.WithTimeout(context.Background(), 10*time.Second) err = DbConn.Connect(ctx) if err != nil { log.Fatal(err) } }
更新請求
確保InsertOne要求正在使用更新的資料庫連線:
ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second) defer cancel() result, err := DbConn.Database(dbName).Collection(collectionName).InsertOne(ctx, b)
進行這些變更後,重新運行應用程式和錯誤應該得到解決。
以上是如何解決 MongoDB 中的「未找到名為「majority」的寫入關注模式」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!