官网下载地址
-
官网地址下载软件包:
https://www.mongodb.com/download-center/community?jmp=nav
-
系统环境centos7.4
部署 Mongodb
-
安装依赖
yum -y install libcurl openssl
-
下载解压包
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.14.tgz
-
配置环境变量
vim /etc/profile export PATH=/usr/local/mongodb/bin:$PATH source /etc/profile
-
进行配置
mkdir /usr/local/mongodb/{data,logs} cd /usr/local/mongodb/bin vim mongodb.conf #端口号 port=27017 #db目录 dbpath=/usr/local/mongodb/data #日志目录 logpath=/usr/local/mongodb/logs/mongodb.log #后台 fork=true #日志输出 logappend=true #允许远程IP连接 bind_ip=0.0.0.0 #开启认证 auth=true
参数说明: 参数 参数说明 –dbpath 数据存放路径 –logpath 日志文件路径 –logappend 日志输出方式 –port 启用端口号 –fork 在后台运行 –auth 是否需要验证权限登录 (用户名和密码) –bind_ip 限制访问的 ip –shutdown 关闭数据库
-
启动测试
mongod --config mongodb.confmongo
停止服务: mongod -f mongodb.conf --shutdown -
添加启动服务
vim /usr/lib/systemd/system/mongod.service
[Unit]
Description=mongodb
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf
PrivateTmp=true
[Install]
```
之后执行:
[root@localhost ~]$systemctl daemon-reload
[root@localhost ~]$systemctl start mongod
[root@localhost ~]$systemctl status mongod
[root@localhost ~]$systemctl enable mongod
```
-
设置用户名、密码与数据库连接
通过向表admin中添加用户来设置
如添加root用户:mongo use admin db.createUser({ user: 'root', // 用户名 pwd: '12345678', // 密码 roles:[{ role: 'root', // 角色 db: 'admin' // 数据库 }] })
如创建需要的数据库: use test db.createUser({ user: 'test', pwd: '12345678', roles:[{ role: 'readWrite', db: 'test' }] })
登录数据库:
// 方式一
mongo
use admin
db.auth(‘root’, ‘12345678’)// 方式二
mongo admin -uroot -p12345678
这时候我们就可以正常访问和操作数据了。除了可以设置数据库的超级管理员以外,还可以给每个数据库设置单独的管理员。其只有操作单独数据的一定权限。
use test // 如果数据库不存在,则创建数据库,否则切换到指定数据库
#插入数据
db.test.insert({“name”:“test”})
随便用一个MongoDB可视化工具访问测试是否连接成功(如MongoDB Compass\NoSQLBooster for MongoDB)数据库创建完随便插入一条数据,这样方便在show dbs 时可以查看。如果没有数据在show dbs时不会显示该库。
常用命令:
show users // 查看当前库下的用户
db.dropUser(‘testadmin’) // 删除用户
db.updateUser(‘root’, {pwd: ‘87654321’}) // 修改用户密码
db.auth(‘root’, ‘87654321’) // 密码认证
1 数据库用户角色:read、readWrite
2 数据库管理角色:dbAdmin、dbOwner、userAdmin
3 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager
4 备份恢复角色:backup、restore
5 所有数据库角色: readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、
6 dbAdminAnyDatabase
7 超级用户角色:root