3.mongodb的简单使用
3.1 mongodb服务端的启动
- 默认端口号:27017
- 默认配置文件的位置:/etc/mongod.conf
- 默认的日志位置:/var/log/mongodb/mongod.log
mongodb服务端的启动分为两种方式:
-
本地测试方式的启动(只具有本地数据CURD的功能)
-
验证数据库能否正常运行
- grep -v ‘#’ /etc/mongod.conf
-
启动 sudo service mongod start (sudo service mongod start)
-
停止 sudo service mongod stop
-
重启 sudo service mongod restart
-
-
生产环境启动(具有完整的全部功能)
- sudo mongod [–auth --dbpath=dbpath --logpath=logpath --append --fork] [–f logfile]
- 只以sudo mongod命令启动时,默认将数据存在了/data/db目录下,需要手动创建
- –dbpath:指定数据库的存放路径
- –logpath:指定日志的存放路径
- –append:或–logappend设置日志的写入形式为追加模式
- –fork:或-fork开启新的进程运行mongodb服务
- –f:或-f配置文件路径(可以将上述配置信息写入文件然后通过该文件的参数进行加载启动)
- –auth:以权限认证的方式启动
-
检测是否启动成功
- ps aux | grep mongod
3.2 mongodb客户端的启动
- 启动本地客户端:mongo
- 查看帮助:mongo -help
- 退出:exit或者ctrl+c
4.mongodb数据库的命令
- 查看当前的数据库:db(没有切换数据库的情况下默认使用test数据库)
- 查看所有的数据库:show dbs /show databases
- 切换数据库:use db_name
- db_name 为show dbs后返回的数据库名
- 删除当前的数据库:db.dropDatabase()
5.mongodb集合的命令
-
无需手动创建集合:向不存在的集合中第一次添加数据时,集合会自动被创建出来
-
手动创建集合:
- db.createCollection(name,options)
- db.createCollection(“stu”)
- db.createCollection(“sub”,{capped:true,size:10})
- 参数capped:默认值为false表示不设置上限,值为true表示设置上限
- 参数size:集合所占用的字节数。当capped值为true时,需要指定此参数,表示上限大小, 当文档达到上线时,会将之前的数据覆盖,单位为字节。
-
查看集合:show collections
-
删除集合:db.集合名称.drop()
-
检查集合是否设定上限:db.集合名称.isCapped()
6.mongodb中常见的数据类型(了解)
6.1常见类型
- Object ID:文档ID/数据的ID,数据的主键
- String:字符串,最常用,必须是有效的UTF-8
- Boolean:存储一个布尔值,true或false
- Integet:整数,可以是32位或64位,这取决与 服务器
- Double:浮点数
- Arrays:数组/列表
- Object:mongodb中的一条数据/文档,即文档嵌套文档
- Null:存储null值
- Timestamp:时间戳,表示从1970-1-1到现在的总描述
- Date:存储当前日期或时间的UNIX时间格式
6.2注意点:
- 每个文档都有一个属性,为_id,保证每个文档的唯一性,mongodb默认使用_id作为主键
- 可以手动设置_id的值,如果没有提供,那么MongoDB会为每个文档提供了一个独特的_id,类型为objectID
- objectID是一个12字节的十六进制数,每个字节两位,一共是24位的字符串
- 前4个字节为当前的时间戳 ,也就是前8个字符串
- 接下来的3个字节的机器ID
- 接下来的2个字节中的MongdoDB的服务进程id
- 最后3个字节是简单的增量值