Navigation

    MongoDB Go Driver

    This is the official MongoDB Go Driver.

    The recommended way to get started using the MongoDB Go driver is by using Go modules

    mkdir goproj
    cd goproj
    go mod init goproj
    go get go.mongodb.org/mongo-driver/mongo

    See Installation for additional ways to add the driver to your project.

    To connect to a MongoDB Atlas cluster, use the Atlas connection string for your cluster:

    package main
    import (
    "context"
    "fmt"
    "log"
    "time"
    "go.mongodb.org/mongo-driver/mongo"
    "go.mongodb.org/mongo-driver/mongo/options"
    "go.mongodb.org/mongo-driver/mongo/readpref"
    )
    func main() {
    // Replace the uri string with your MongoDB deployment's connection string.
    uri := "mongodb+srv://<username>:<password>@<cluster-address>/test?w=majority"
    ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
    defer cancel()
    client, err := mongo.Connect(ctx, options.Client().ApplyURI(uri))
    if err != nil {
    panic(err)
    }
    defer func() {
    if err = client.Disconnect(ctx); err != nil {
    panic(err)
    }
    }()
    // Ping the primary
    if err := client.Ping(ctx, readpref.Primary()); err != nil {
    panic(err)
    }
    fmt.Println("Successfully connected and pinged.")
    }

    See Usage for more detail.

    Go DriverMongoDB 4.4MongoDB 4.2MongoDB 4.0MongoDB 3.6MongoDB 3.4MongoDB 3.2MongoDB 3.0MongoDB 2.6
    1.4
    1.3
    1.2
    1.1
    1.0

    The MongoDB Go driver requires Go 1.10 or later.

    For more information on how to read the compatibility tables, see our guide on MongoDB Compatibility Tables.

    Give Feedback