user2202844
user2202844

Reputation: 27

how to connect compose mongodb with golang

I try to connect compose mongodb in bluemix with golang program but i get unsupported connection url option ssl. Here I give mongodb connection string got from composedb console. How to connect with remote host need syntax for connect?

session, err := mgo.Dial("mongodb://****:****@aws-us-east-1-portal.26.dblayer.com:20258/admin?ssl=true")
    if err != nil {
        panic(err)
    }
    defer session.Close()

    // Optional. Switch the session to a monotonic behavior.
    session.SetMode(mgo.Monotonic, true)

    c := session.DB("test").C("people")
    err = c.Insert(&Person{"Ale", "+55 53 8116 9639"},
        &Person{"Cla", "+55 53 8402 8510"})
    if err != nil {
        log.Fatal(err)
    }

The error:

panic: unsupported connection URL option: ssl=true

goroutine 1 [running]:
panic(0x2130a0, 0xc82000a840)
    /usr/local/go/src/runtime/panic.go:481 +0x3e6
main.main()
    /Users/vit/gocode/src/mongmix/mmix.go:19 +0x9b
exit status 2

Upvotes: 1

Views: 1749

Answers (2)

sudheer nunna
sudheer nunna

Reputation: 1719

install "go get gopkg.in/mgo.v2"

package main
///////////////import mongo gopkg//////////////
import (
"fmt"
"gopkg.in/mgo.v2"
"gopkg.in/mgo.v2/bson"
)
//////////// add struct//////////////////////////
type Person struct {
Name string
Phone string
}
/////  main function///////////
func main(){
fmt.Println("Hello world");
//////db connection ////////////
session, err := mgo.Dial("localhost:9494")
if err != nil {
        panic(err)
}
defer session.Close()

// Optional. Switch the session to a monotonic behavior.
session.SetMode(mgo.Monotonic, true)
///////////////db name/////////////
c := session.DB("sudheer").C("people")

err = c.Insert(&Person{"Ale", "+55 53 8116 9639"},
           &Person{"Cla", "+55 53 8402 8510"})
if err != nil {
        log.Fatal(err)
}


result := Person{}
err = c.Find(bson.M{"name": "Ale"}).One(&result)
if err != nil {
        log.Fatal(err)
 }

fmt.Println("Phone:", result.Phone)
 }

Upvotes: 1

kashyapa
kashyapa

Reputation: 1626

IBM Bluemix Compose for Mongodb has a documentation available online here: https://console.bluemix.net/docs/services/ComposeForMongoDB/index.html#getting-started-with-compose-for-mongodb

Step 2 talks about connecting to your compose mongo db. There is a nodejs sample code provided in step 2. You will have to check connection string to mongodb in golang i.e. the syntax in golang.

I found out this article which explains connecting to IBM Compose mongodb from goland: https://www.compose.com/articles/connect-to-mongo-3-2-on-compose-from-golang/

hope this helps.

Upvotes: 0

Related Questions