小编Tob*_*696的帖子

如何在go(lang)中连接mlab mongodb数据库?

我有一个名为storyfactory 的 mlab MongoDB 数据库。该数据库有一个名为 test 的集合,其中有一个名为 Standard 且带有密码的用户。 我正在尝试使用此Driver

连接到数据库。 这是代码:

package main

import (
    "context"
    "fmt"
    "log"
    "time"

    "go.mongodb.org/mongo-driver/bson"
    "go.mongodb.org/mongo-driver/mongo"
    "go.mongodb.org/mongo-driver/mongo/options"
)

func main() {
    ctx, _ := context.WithTimeout(context.Background(), 10*time.Second)
    client, err := mongo.Connect(ctx, options.Client().ApplyURI("mongodb://<Standard>:<Password>@ds127101.mlab.com:27101/storyfactory"))
    if err != nil {
        log.Fatal(err)
    }
    collection := client.Database("storyfactory").Collection("test")
    ctx, _ = context.WithTimeout(context.Background(), 5*time.Second)
    res, err := collection.InsertOne(ctx, bson.M{"name": "pi", "value": 3.14159})
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(res.InsertedID)
}
Run Code Online (Sandbox Code Playgroud)


如果我尝试运行此代码,我会得到以下输出:

2019/03/12 18:09:04 auth error: sasl conversation error: unable to authenticate …
Run Code Online (Sandbox Code Playgroud)

driver go mongodb

5
推荐指数
1
解决办法
6637
查看次数

无法在Ubuntu上的Golang中连接到Mongo Cloud mongodb数据库

我有以下Go Code可以连接到我的Mongo Cloud数据库:

func connectToDataBase() {
    ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second)
    defer cancel()
    client, err := mongo.Connect(ctx, options.Client().ApplyURI(dbURL))
    if err != nil {
        log.Fatal("Error connecting to Database: ", err.Error())
    }
    DB = client.Database("storyfactory")
}
Run Code Online (Sandbox Code Playgroud)

我已经在Windows计算机上运行了此代码,并且可以正常工作。现在,我尝试在ubuntu上运行它,并且出现以下错误:

2019/04/13 00:20:37 Error connecting to Database: error parsing uri (mongodb+srv://User:Password@cluster0-gpxjk.gcp.mongodb.net/test?retryWrites=true): lookup cluster0-gpxjk.gcp.mongodb.net on 127.0.0.53:53: cannot unmarshal DNS message
exit status 1
Run Code Online (Sandbox Code Playgroud)

我不知道为什么它可以在Windows上运行,而现在却不在ubuntu上。
谢谢你的帮助!

ubuntu connect go mongodb

1
推荐指数
2
解决办法
701
查看次数

标签 统计

go ×2

mongodb ×2

connect ×1

driver ×1

ubuntu ×1