美文网首页我爱编程
MongoDB(2)基本操作

MongoDB(2)基本操作

作者: meetliuxin | 来源:发表于2018-05-05 00:17 被阅读0次

    1.启动和关闭

    sudo mongod --dbpath /usr/local/Cellar/mongodb/3.6.4/data/db  #启动服务
    mongo  #另开一个终端输入mongo连接到数据库
    use admin
    db.shutdownServer()  #关闭
    
    #mac下mongodb用brew安装的,关于mongodb启动停止:
    brew services start mongodb  #启动
    brew services stop mongodb。 #停止
    brew services restart mongodb。 #重启
    #brew安装后默认数据库存储位置为 /usr/local/var/mongodb 
    #brew安装后配置文件为 /usr/local/etc/mongod.conf
    

    2.创建用户和密码

    创建管理员用户

    use admin  #admin类似 mysql中的 root
    db.createUser(
      {
        user: "adminUser",
        pwd: "adminPass",
        roles: [ { role: "userAdminAnyDatabase",  db: "admin"}]
      }
    )
    

    创建普通用户

    use foo
    db.createUser(
      {
        user: "simpleUser",
        pwd: "simplePass",
        roles: [ { role: "readWrite",  db: "foo"}, #权限:读写数据库foo
                    {role: "read", db: "bar"} ]        # 只读数据库bar
      }
    )
    

    3.连接到数据库

    URI形式访问

    URI标准语法:
    mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
    例子:

    mongodb://admin:123456@localhost/test  #用户admin密码123456连接到本地mongodb服务中test数据库
    mongodb://simpleUser:simplePass@localhost:27017/foo
    

    mongodb用户验证登陆

    mongod --auth --port 27017 --dbpath /usr/local/Cellar/mongodb/3.6.4/data/db
    #第一种(类似mysql)
    mongo --port 27017  -u "adminUser" -p "adminPass" --authenticationDatabase "admin"
    #第二种 连接客户端之后再验证
    mongo --port 27017
    use admin
    db.auth("adminUser", "adminPass") #输出1表示验证成功
    
    

    4.创建数据库

    use database_name如果数据库不存在则会创建

    5.删除数据库

    db.dropDatabase() 删除当前数据库
    db.collection.drop()删除集合
    例子:删除site集合:db.site.drop()

    6.创建集合

    语法格式:db.createCollection(name, options)
    name: 要创建的集合名称
    options: 可选参数, 指定有关内存大小及索引的选项
    options 可以是如下参数:


    mongodb中可以不创建集合,当你插入文档时会自动创建集合。

    7.删除集合

    语法格式:db.collection.drop()


    8.插入文档

    语法格式:db.collection_name.insert(document) 可以用save或者insert
    查看插入的文档: db.collection_name.find()


    9.更新文档

    update()语法:

    db.collection.update(
      {query},              #更新条件,类似mysql中where
      {update},            #新的内容,类似mysql中set
      {
        upsert:<boolean>,  #可选,如果不存在更新的记录,是否插入,默认false
        multi:<boolean>     #可选,默认false只更新找到的第一条记录,true更新全部符合条件的记录 
      } 
    )
    

    实例:



    save() 方法通过传入的文档来替换已有文档。

    .常用命令

    show dbs #显示所有数据库
    show tables #显示当前数据库中所有集合
    show collections #查看已有集合
    db  #显示当前数据库对象或集合
    use 数据库名 #连接到一个指定的数据库,数据库名必须是小写
    

    启动MongoDB服务失败及ubuntu开机自启动MongoDB:
    https://www.digitalocean.com/community/tutorials/how-to-install-mongodb-on-ubuntu-16-04

    相关文章

      网友评论

        本文标题:MongoDB(2)基本操作

        本文链接:https://www.haomeiwen.com/subject/uzujrftx.html