文章目录

  • windows 下安装
    • 小坑
  • 运行 mongodb 服务器
  • 连接 mongodb
  • 使用 globalsign/mgo 操作 mongodb

windows 下安装

在 windows 下安装可以参考这篇文章。

小坑

我使用的是 windows 10 企业版,在安装时出现了个问题,如下:

反正我是在网上找了大半天没有找到解决的办法,都是文章作者可用,但是我一直不生效,我觉得的必须要用管理员权限安装导致的。后来我直接 ignore了,用管理员权限运行其实也可以。

运行 mongodb 服务器

用管理员 power shell 运行
具体命令可以参看文档

 .\mongod.exe  --dbpath D:\mySoft\mongoDB\data\db

连接 mongodb

使用 globalsign/mgo 操作 mongodb

package mainimport ("fmt""time""github.com/globalsign/mgo""github.com/globalsign/mgo/bson"
)type User struct {Id        bson.ObjectId `bson:"_id" json:"id"`Username  string        `bson:"name" json:"username"`Pass      string        `bson:"pass" json:"pass"`Regtime   int64         `bson:"regtime" json:"regtime"`Interests []string      `bson:"interests" json:"interests"`
}const URL string = "127.0.0.1:27017"var (c       *mgo.Collectionsession *mgo.Session
)func (user User) ToString() string {return fmt.Sprintf("%#v", user)
}func init() {session, _ = mgo.Dial(URL)// 切换到数据库db := session.DB("blog")// 切换到collectionc = db.C("mgotest")
}// 新增数据
func add() {//    defer session.Close()stu1 := new(User)stu1.Id = bson.NewObjectId()stu1.Username = "stu_name" + time.Now().String()stu1.Pass = "stu1_pass"stu1.Regtime = time.Now().Unix()stu1.Interests = []string{"象棋", "游泳", "跑步"}err := c.Insert(stu1)if err == nil {fmt.Println("insert success")} else {fmt.Printf("insert error:%s \n", err.Error())}
}// 查询
func find() {//    defer session.Close()var (users []Usererr   error)//    c.Find(nil).All(&users)err = c.Find(bson.M{"name": "stu_name"}).All(&users)if err != nil {fmt.Printf("find err:%s \n", err.Error())return}for index, value := range users {fmt.Printf("index:%d,val:%s \n", index, value.ToString())}// 根据ObjectId进行查询// idStr := "577fb2d1cde67307e819133d"// objectId := bson.ObjectIdHex(idStr)// user := new(User)// err = c.Find(bson.M{"_id": objectId}).One(user)// if err != nil {//     fmt.Printf("db find err:%s \n", err.Error())//    return// }// fmt.Println("查找成功..", user)
}// 根据id进行修改
func update() {interests := []string{"象棋", "游泳", "跑步"}err := c.Update(bson.M{"_id": bson.ObjectIdHex("6076c3954e947b3944d4a38b")}, bson.M{"$set": bson.M{"name":      "修改后的name","pass":      "修改后的pass","regtime":   time.Now().Unix(),"interests": interests,}})if err != nil {fmt.Println("修改失败")} else {fmt.Println("修改成功")}
}// 删除
func del() {err := c.Remove(bson.M{"_id": bson.ObjectIdHex("6076c3954e947b3944d4a38b")})if err != nil {fmt.Println("删除失败" + err.Error())} else {fmt.Println("删除成功")}
}
func main() {add()find()update()del()
}

库里的结果:

(一) windows 10 下安装 mongodb 并 globalsign/mgo 包的简单使用相关推荐

  1. 关于 Windows 10 下安装 Linux 过程及报 'WSL...' 错误的解决办法

    今天下午在群里看到有朋友发有关"Windows 10 下按安装 Linux 系统"的消息,小白我很是激动啊(Linux 贴近工作,Windows 贴近生活,割舍不下-),虽然可以在 ...

  2. Windows 10 下安装Ubuntu子系统 编译Android源码问题记录

    一.Ubuntu子系统安装 1.启用WSL Windows Subsystem for Linux(简称WSL)是一个在Windows 10\11上能够运行原生Linux二进制可执行文件(ELF格式) ...

  3. windows 10下安装kali linux 双系统教程

    由于本人先安装了windows10,所以将硬盘划分一个区安装kali 准备工作: 1. 下载kali镜像:官网下载链接 2. 用win32DiskImager制作启动盘 :打开度盘下载链接(注:用ul ...

  4. Windows 10下安装scrapy(pip方式,非wheel)

    1.安装Microsoft Visual Studio Build Tools 打开下载链接,点击"https://aka.ms/BuildTools",跳转后再页面底部找到&qu ...

  5. 目标检测第1步:如何在Windows 10下安装MiniConda?

    (请先看置顶博文)本博打开方式!!!请详读!!!请详读!!!请详读!!!_Cat-CSDN博客 目录 一.Conda是什么? 二.Anaconda和MiniConda的区别是什么? 三.如何安装Min ...

  6. Windows 10下安装Elementary OS双系统

    本文毫无技术含量,望周知,勿喷.写这篇教程仅仅是为了记录下安装双系统的过程,方便以后折腾. 长期使用Windows操作系统总会带来审美疲劳或者累觉不爱,那么Linux就是一个新大陆.Elementar ...

  7. Windows 10下安装Docker Desktop

    安装连接:https://hub.docker.com/editions/community/docker-ce-desktop-windows/ 需要提前打开Hyper - V 安装后重启: 在任务 ...

  8. Windows 10 下安装pycrypto时出错的解决问题

    错误信息如下: Collecting pycrypto   Using cached pycrypto-2.6.1.tar.gz (446 kB)   Preparing metadata (setu ...

  9. 在windows 10下安装python

    windows系统默认状态下是没有安装python的,我们需要下载并安装它. 首先检查是否安装了python 在"开始"菜单中输入cmd,然后右击选择管理员身份运行,这样就打开了一 ...

最新文章

  1. 爬虫之selenium标签页的切换
  2. ASP.NET MVC使用Bootstrap系列(1)——开始使用Bootstrap
  3. 连接LilyPad之Windows平台的驱动
  4. hive与spark的匹配版本汇总
  5. js 里面令人头疼的 this
  6. 【C/C++】内存基础
  7. 瑞星千万巨款贿赂官员 制造冤狱铲除竞争对手图片
  8. 安装CDH6.3版本的时候遇到 ‘ERROR main:com.cloudera.server.cmf.Main: Server failed’的解决方案
  9. 【JavaScript 教程】第六章 数组11— filter() :过滤数组中的元素
  10. U盘显示0字节怎么恢复完整解决教程
  11. 使用java自动下载网易云音乐
  12. 来西安必看的旅游攻略!看过来,带你玩转西安!
  13. 士兵杀敌(coduck)
  14. [Linux 配置Mysql] 在Linux上面 安装mysql 5.7数据库
  15. 网络共享计算机权限访问,共享电脑没有访问权限_共享电脑无访问权限
  16. SRM 551 ColorfulCupcakesDivTwo
  17. PyQT5 (二十五) 绘图API: 绘制不同类型的直线 的案例drawLine()
  18. 时间序列分析——如何正确使用单位根检验(ADF)?
  19. 地球系统官方承认的(superman)超人-钢铁之躯的氪星钻石符号和超人的形象
  20. 安卓强制恢复出厂_手机越来越卡!备份一下恢复出厂设置,还有的救吗?

热门文章

  1. python超简单趣味编程100例_python趣味编程100例
  2. 相亲APP开发功能及解决方案
  3. 从零开始制作STM32F103RCT6小车(一)
  4. win10新建菜单只有文件夹怎么办?
  5. 极米newz6x和newz8x区别 极米newz6x和newz8x哪款好 哪个性价比高
  6. 国产CAD制图软件中怎么设置两点标注?
  7. Dnspod域名设置
  8. Mac外接键盘ikbc win键无法使用问题
  9. ChatGPT能够干翻谷歌吗?
  10. 高达1000美元,扫地机器人Roomba如何成为疫情期间的赢家?