package main

import (
    "fmt"
    "log"
    "time"

"gopkg.in/mgo.v2"
)

const (
    MongoDBHosts = "IP:PORT"  //mongodb 地址端口
    AuthDatabase = "dbname"   //autn 库
    AuthUserName = "username" //auth 用户名
    AuthPassword = "password" // auth 密码
    MaxCon       = 300        //连接池socket设置
)

func main() {
    mongoDBDialInfo := &mgo.DialInfo{
        Addrs:    []string{MongoDBHosts},
        Timeout:  60 * time.Second,
        Database: AuthDatabase,
        Username: AuthUserName,
        Password: AuthPassword,
    }

session, err := mgo.DialWithInfo(mongoDBDialInfo)
    if err != nil {
        log.Fatalf("CreateSession failed:%\n", err)
    }

//建立collection
    coll := session.DB("test").C("user")

/*
        EnsureIndexKey ensures an index with the given key exists, creating it if necessary
    */

//索引存在则不进行操作,不存在自动创建
    // err = coll.EnsureIndexKey("a", "b")
    //fmt.Println("err-----------------:",err)

//查询所有的已存在索引
    // indexs, err := coll.Indexes()
    // fmt.Println("err-----------------:", err)
    // fmt.Println("indexs--------------:", indexs)

//删除索引,成功返回nil,如果不存在则返回对应的具体信息
    // err = coll.DropIndex("a", "b")
    // fmt.Println("err-----------------:", err)

//设置连接池的大小,默认4096可自定义修改根据需求
    session.SetPoolLimit(MaxCon)
    defer session.Close()
}

golang对mongo数据库索引的创建,删除操作相关推荐

  1. MongoDB 数据库、集合创建删除与文档插入

    本文章主要介绍mongodb的基本命令,前提条件,你的本地已经安装了mongo. 一.基本命令使用(主要是创建,增删改.) 0.mongoDb统计信息 获得关于MongoDB的服务器统计,需要在Mon ...

  2. 数据库索引的创建以及常见优化

     如何使用数据库索引 使用索引可快速访问数据库表中的特定信息.索引是对数据库表中一列或多列的值进行排序的一种结构.索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容. 什么是索引 数据 ...

  3. 数据库索引的创建和使用

    文章目录 数据库索引 创建索引 使用场景 数据库索引 数据库的索引可以加快查询速度,原因是索引使用特定的数据结构(B-Tree)对特定的列额外组织存放,加快存储引擎(索引是存储引擎实现)查找记录的速度 ...

  4. mysql索引的创建删除

    01.索引创建.删除与使用: 1.1 create方式创建索引: CREATE [UNIQUE -- 唯一索引| FULLTEXT -- 全文索引] INDEX index_name ON table ...

  5. 达梦数据库索引的创建与测试

    索引是:一种数据库对象,通过指针加速查询速度,通过快速定位数 据的方法,减少磁盘 I/O,索引与表相互独立,服务器自动使用和维 护索引.索引占空间. 达梦支持的索引:二级索引,位图过索引,唯一索引,复 ...

  6. oracle数据库索引增加和删除

    1.增加索引 create index 索引名 on 表名 (字段名) --创建单一索引tablespace 数据库名 pctfree 10 initrans 2maxtrans 255storage ...

  7. 数据库索引如何创建,它的优缺点。

     为什么要创建索引呢?这是因为,创建索引可以大大提高系统的性能. 第一,通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性. 第二,可以大大加快 数据的检索速度,这也是创建索引的最主要的原因. ...

  8. Oracle 唯一 索引 约束 创建 删除

    http://www.blogjava.net/lukangping/articles/340683.html/*给创建bitmap index分配的内存空间参数,以加速建索引*/ show para ...

  9. oracle 查询索引个数,Oracle数据库索引的创建和查询

    索引命名规范:普通索引最好i_开头,唯一索引最好u_开头,primary key索引最好pk_开头 1.创建索引:create index 索引名 on 表名(字段名); 2.查询索引 oracle中 ...

最新文章

  1. Long类型转json时前端js丢失精度解决方案
  2. 如何通过其值获取JavaScript对象中的键?
  3. micropython 实时音频传输_在线实时合唱的实现原理与难点是什么?
  4. Echart 5.0+版本报错Error in data(): “TypeError: Cannot read properties of undefined (reading ‘graphic‘)“
  5. 32位hex转浮点 python_python——int()、hex()、oct()、bin()、float()数值类型转换函数
  6. a算法和a*算法的区别_游戏寻路中 A* 算法的改进
  7. 史上最迷你人脸数据集olivettifaces基于卷积神经网络模型+迁移学习构建人脸识别模型实战
  8. 最普通IT男-苦逼coder杂谈
  9. SQL后计算的利器SPL
  10. APUE---chap6系统数据文件和信息---6.2~6.4 6.10
  11. 米思齐 超声波传感器控制小灯泡
  12. 集成电路设计的一种运作模式(Fabless/Foundry/IDM模式)
  13. java计算机毕业设计-数字相册管理系统-源码+数据库+系统+lw文档+mybatis+运行部署
  14. python到底怎么读?
  15. Build a project
  16. 迪克莫利-PLC之父
  17. 内部邮件服务器的端口映射问题
  18. 嵌入式软件开发学习 工程师要掌握的基本技能
  19. 华为路由器恢复出厂设置
  20. python实现去重_Python列表去重的4种实现方法

热门文章

  1. 浅谈Android游戏开发基础和经验
  2. android卡点视频教程,剪映怎么手动卡点? 剪映app卡点视频效果的制作方法
  3. html字两边的横线_css怎么在文字两边加上横线
  4. 微信发送的视频有限制
  5. redis之Hash哈希类型以及存储原理
  6. 瑞芯微的接口结构学习总结
  7. 华为交换机 组环网步骤
  8. Stanford,Pupper,开源四足机器狗,电子电气组装接线
  9. 【开箱视频】仪器验收需要注意哪些细节?
  10. 21 款 IDEA 神仙插件!