mongodb 面向文档数据库,非关系型数据库
功能: 索引,聚合,特殊集合,文件存储
2. 多文档组成集合 -> 多集合组成数据库
一个mongo实例可承载多个数据库
2.1 文档:键值对的有序集合,值可以多种不同类型(键可以任意UTF8字符,但\0, . , $ 不能使用)
不能有重复键值,区分大小写
2.2 集合: 一组文档
集合命名: 1.不能是空字符,2.不能包含\0, 3.不能以system. 开头, 4.不能包含$
子集合: 惯用"." 分隔不同子集合。
如:博客功能应用包含两集合,blog.posts, blog.authors
大部分都会使用 : db.blog.authors
2.3 数据库:区分大小写,惯例全为小写,最多64字节。
保留的数据库名:
admin:“root”数据库,如将用户添加到admin数据库,则获得所有数据库权限,可启停数据库
local: 不可复制,一台服务器上所有本地集合都存储在这。
config:分片设置时,信息会存储在这。
3. 安装
https://www.mongodb.com/download
rpm -ivh mongodb-org-server-4.0.6-1.el7.x86_64.rpm
4. 启动
默认数据目录: /data/db, 目录不存在会启动失败
如果使用以外的目录使用 --dbpath 参数 : mongod --dbpatch /oradata/monogdb
默认端口:27017
[root@instance-795y2mib oradata]# mongod -dbpath /oradata/mongodb
2019-02-24T15:15:36.030+0800 I CONTROL [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none'
2019-02-24T1515::36.034+0800 I CONTROL [initandlisten] MongoDB starting : pid=24074 port=27017 dbpath=/oradata/mongodb 64-bit host=instance-795y2mib
......
2019-02-24T15:15:36.034+0800 I CONTROL [initandlisten] target_arch: x86_64
2019-02-24T15:15:36.034+0800 I CONTROL [initandlisten] options: { storage: { dbPath: "/oradata/mongodb" } }
[root@instance-795y2mib ~]# ps -ef|grep mongo
root 24074 18158 2 15:15 pts/0 00:00:01 mongod -dbpath /oradata/mongodb
[root@instance-795y2mib ~]# netstat -an |grep 27017
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN
unix 2 [ ACC ] STREAM LISTENING 110151818 /tmp/mongodb-27017.sock