从0实现分布式任务调度系统--MongoDB基础操作

系统环境Centos7,下载并解压 mongodb-linux-x86_64-3.0.6.tgz

进入解压后的目录,使用mkdir 命令新建一个 data 目录:

从0实现分布式任务调度系统--MongoDB基础操作_第1张图片

启动MongoDB服务:

        nohup bin/mongod --dbpath=./data --bind_ip=0.0.0.0 &

使用 bin/mongo 命令连接MongoDB进行测试:

从0实现分布式任务调度系统--MongoDB基础操作_第2张图片

下载MongoDB go语言接口包:

https://github.com/go-mgo/mgo

 

GO语言操作代码:

package main

// https://github.com/go-mgo/mgo
import (
   "fmt"
   "gopkg.in/mgo.v2"
   "gopkg.in/mgo.v2/bson"
   "log"
)

type Person struct {
   Name string
   Email string
}

func main() {
   session, err := mgo.Dial("mongodb://119.311.215.80:27017")
   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{"zhang", "[email protected]"},
      &Person{"wang", "[email protected]"})
   if err != nil {
      log.Fatal(err)
   }

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

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

运行结果:

从0实现分布式任务调度系统--MongoDB基础操作_第3张图片

查看当前MongoDB中的数据情况:

从0实现分布式任务调度系统--MongoDB基础操作_第4张图片

至此可以看出,上面的代码已经将两条记录插入到test数据库的people集合中,并将对应的记录查询回来后进行了展示。

你可能感兴趣的:(分布式,Go)