整体来说安装mongodb比较简单,个人觉得相对于安装redis要简单些,下面我就用自己安装的linux虚拟机进行演示
环境:
CentOS 7
MongoDB 3.4.9
下载Linux版的MongoDB安装包
直接去官网下载,选择Server,如下:
或者直接通过命令下载
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon-3.6.9.tgz
下载完成之后通过ftp上传到/usr/local目录下,当然你也可以放在自己规定的目录下
解压并重命名
tar zxvf mongodb-linux-x86_64-amazon-3.6.9.tgz
mv mongodb-linux-x86_64-amazon-3.6.9 mongodb
进入mongodb,在bin的同级创建data目录及其子目录db,以及日志目录logs
mkdir -p data/db
mkdir logs
创建完成之后,我们需要在bin的下级(不一定在下级,随便什么地方都行,这里方便演示)创建配置文件mongodb.conf(文件名随便取,文件类型随便)
vim mongodb.conf
文件内容
#数据目录
dbpath = /usr/local/mongodb/data/db
#日志文件
logpath = /usr/local/mongodb/logs/mongoLogs.log
#端口号 默认27017
port=27017
#设置后台运行
fork = true
#日志输出方式
logappend = true
#允许远程连接
bind_ip = 0.0.0.0
保存:esc :wq+Enter或shift+zz或ZZ
接下来可以使用bin下面的mongod来启动
./mongod -f mongodb.conf
出现这种提示表示启动成功
接下来使用bin下面的mongo来验证
./mongo
查看数据库名称,默认使用的是test
查看版本号
切换数据库admin
Ctrl+c退出
为了方便使用mongo shell连接数据库,需要配置环境变量
vim /etc/profile
按i键插入,在文件最后添加
export PATH=/usr/local/mongodb/bin:$PATH
保存:esc :wq+Enter或shift+zz或ZZ
刷新环境变量
source /etc/profile
然后就可以在任意目录使用mongo进行连接了
还可以设置开机自启
编辑/etc/rc.d/rc.local文件
vim /etc/rc.d/rc.local
按i键插入,在文件最后添加
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf
保存:esc :wq+Enter或shift+zz或ZZ
我们可以找到mongodb进程杀死然后重启试试
ps -ef|grep mongodb
kill -9 3928
重启
reboot
创建用户及添加角色
db.createUser(
{
user: "admin",
pwd: "admin",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
角色
- Read:允许用户读取指定数据库
- readWrite:允许用户读写指定数据库
- dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
- userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
- clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
- readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
- readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
- userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
- dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
- root:只在admin数据库中可用。超级账号,超级权限
用户校验
db.auth('admin','admin');
连接的uri
mongodb://username:password@ip:port/dbName