安装
解压已上传的mongodb压缩包:
tar zxvf mongodb-linux-x86_64-rhel62-3.4.5.tgz
将解压后的文件夹移动至指定目录:
mv mongodb-linux-x86_64-rhel62-3.4.5/ /usr/local/mongodb
创建数据文件夹、日志文件和mongo配置文件:
mkdir -p /usr/local/mongodb/data
touch /usr/local/mongodb/mongod.log
touch /usr/local/mongodb/mongodb.conf
修改配置文件:
vim /usr/local/mongodb/mongodb.conf
在配置文件中加入如下代码:
dbpath=/usr/local/mongodb/data
logpath=/usr/local/mongodb/mongod.log
logappend = true
port = 27017
fork = true
auth = true
启动和关闭
进入到安装目录下:
cd /usr/local/mongodb/bin
启动:
./mongod --config /usr/local/mongodb/mongodb.conf
关闭:
./mongod -shutdown -dbpath=/usr/local/mongodb/data
配置
开放服务器端口:MongoDB一般运行在27017端口,因为阿里云的27017端口默认关闭,所以需要手动开启,进入阿里云-云服务器ECS-实例-管理-本实例安全组-配置规则-添加安全组规则
配置环境变量:
vim ~/.bashrc
在最后添加:
export PATH=$PATH:/usr/local/mongodb/bin
退出后记得使用source命令使设置生效:
source ~/.bashrc
如此可直接在命令行使用mongo连接mongo服务
mongodb相关操作
1.mongodb是没有默认管理员账号,所以要先添加管理员账号,在开启权限认证。
2.切换到admin数据库,添加的账号才是管理员账号。
3.用户只能在用户所在数据库登录,包括管理员账号。
4.管理员可以管理所有数据库,但是不能直接管理其他数据库,要先在admin数据库认证后才可以。这一点比较怪
添加用户:
use admin
db.createUser({user:"username",pwd:"password",roles:["root"]})
db.createUser({user:"username",pwd:"password",roles:[{ role:"权限",db:"数据库名称"}]})
---
MongoDB基本的角色:
1.数据库用户角色:read、readWrite;
2.数据库管理角色:dbAdmin、dbOwner、userAdmin;
3.集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4.备份恢复角色:backup、restore;
5.所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6.超级用户角色:root
小提示:如果创建用户提示没有权限,可以先注释mongodb.conf 中 auth=true ,添加完用户后再取消注释,然后重启服务。
密码认证:
db.auth("username","password")
远程连接:
mongodb://username:password@IP地址:27017/数据库名称