MongoDB for centos安装配置与操作入门
2021-12-12 本文已影响0人
卡门001
YUM安装
编译安装源
笔者使用版本:5.0
touch /etc/yum.repos.d/mongodb-org-5.0.repo && vi /etc/yum.repos.d/mongodb-org-5.0.repo
代码如下
[mongodb-org-5.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/5.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-5.0.asc
安装
mkdir -p /var/lib/mongo
mkdir -p /var/log/mongodb
mkdir -p /var/run/mongodb
chown -R mongod:mongod /var/lib/mongo
chown -R mongod:mongod /var/log/mongodb
chown -R mongod:mongod /var/run/mongodb
yum install -y mongodb-org
默认情况下,MongoDB使用mongod用户帐户运行,并使用以下默认目录:
/var/lib/mongo (数据目录)
/var/log/mongodb (日志目录)
验证结果
rpm -qa |grep mongodb #图示结果即为成功
rpm -ql mongodb-org-server #该语句可以看到安装路径(图:略)

启动
systemctl start mongod.service #启动服务
netstat -natp | grep 27017 #通过查看启动情况,
ps -aux | grep mongod #查看进程
进入命令界面
mongo #进入mongodb命令行界面

基础操作
创建用户、设置帐号、密码和权限
// admin数据库
> use admin
switched to db admin
> db.createUser({ user:"root", pwd:"123456", roles:["root"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }
> use mylogs #同时也是创建数据库
> db.createUser({ user:"mylogsRoot", pwd:"logs...", roles:["readWrite", "dbAdmin"] })
>
连接配置
允许远程连接
vi /etc/mongod.conf
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0 # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
修改绑定ip默认127.0.0.1只允许本地连接, 所以修改为bindIp:0.0.0.0, 退出保存
启动身份验证
vi /etc/mongod.conf
----
security:
authorization: "enabled" # disable or enabled
重启服务生效
service mongod restart
远程连接
mongo shell
本文是mongo shell命令操作
mongo shell请从https://www.mongodb.com/products/shell下载
mongosh ip # 终端连接
附录
用户角色与权限
角色 | 描述 |
---|---|
root | 只在admin数据库中可用。超级账号,超级权限 |
Read | 允许用户读取指定数据库 |
readWrite | 允许用户读写指定数据库 |
dbAdmin | 允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile |
userAdmin | 允许用户向 |
system.users | 集合写入,可以找指定数据库里创建、删除和管理用户 |
clusterAdmin | 只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限 |
readAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的读权限 |
readWriteAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的读写权限 |
userAdminAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的userAdmin权限 |
dbAdminAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限 |
客户端工具
MongoVUE
使用方法(待补充),可自先度娘
RoboMongo
使用方法(待补充),可自先度娘
不同语言mongodb的连接工具
node.js
mongoose
- Mongoose 是一个让我们可以通过Node来操作MongoDB数据库的一个模块
- Mongoose 是一个对象文档模型(ODM)库,它是对Node原生的MongoDB模块进行了进一步的优化封装
- 大多数情况下,他被用来把结构化的模式应用到一个MongoDB集合,并提供了验证和类型装换等好处
- 基于MongoDB驱动,通过关系型数据库的思想来实现非关系型数据库
java(待续)
附录
mongodb的基本概念

参考:
[官网] https://www.mongodb.com/
官网文档