current release ---->当前稳定版html
previous release ---->旧版本node
系统说明linux
Ubuntu ----> 优般图
Linux legacy ----> 通用版
window ----> 不解释
RHEL Linux ----> 红帽
Amazon Linux ----> 亚马逊
Debian Linux ----> Debian
SUSE Linux ----> SUSE
复制代码
我linux系统安装的是centOS 7,属于红帽旗下,因此我选择的RHEL 7.2 Linux的mongoDB,贴个图,我选择的各个版本 redis
安装 此次安装使用tgz包mongodb
1,安装wget
[root@izbp1b498epn4trb75oykez ~]# yum -y install wget
2,使用wget下载tgz包,我当前目录/usr/local/
[root@izbp1b498epn4trb75oykez local]# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.9.tgz
3,新建mongoDB文件夹,将tgz文件解压至mongoDB文件夹下
[root@izbp1b498epn4trb75oykez local]# mkdir mongoDB
[root@izbp1b498epn4trb75oykez local]# tar -zxvf mongodb-linux-x86_64-rhel70-4.0.9.tgz -C /usr/local/mongoDB
4,进入mongoDB目录,查看目录文件,发现还有一个mongodb-linux-x86_64-rhel70-4.0.9目录,这个目录内才是mongoDB的文件,咱们将这个目录内的文件移动到mongoDB目录下
[root@izbp1b498epn4trb75oykez local]# cd mongoDB/
[root@izbp1b498epn4trb75oykez mongoDB]# ls
mongodb-linux-s390x-rhel72-4.0.9
[root@izbp1b498epn4trb75oykez mongoDB]# cd mongodb-linux-x86_64-rhel70-4.0.9
[root@izbp1b498epn4trb75oykez mongodb-linux-x86_64-rhel70-4.0.9]# ls
bin LICENSE-Community.txt MPL-2 README THIRD-PARTY-NOTICES
[root@izbp1b498epn4trb75oykez mongodb-linux-x86_64-rhel70-4.0.9]# mv * ../
5,删除已无用的mongodb-linux-x86_64-rhel70-4.0.9文件夹,(没有强迫症可不删)
[root@izbp1b498epn4trb75oykez mongoDB]# rm -rf mongodb-linux-x86_64-rhel70-4.0.9
复制代码
[root@izbp1b498epn4trb75oykez mongoDB]# mkdir data
[root@izbp1b498epn4trb75oykez mongoDB]# mkdir data/db
[root@izbp1b498epn4trb75oykez mongoDB]# mkdir logs
[root@izbp1b498epn4trb75oykez mongoDB]# touch logs/mongoLogs.log
[root@izbp1b498epn4trb75oykez mongoDB]# touch mongodb.conf
复制代码
[root@izbp1b498epn4trb75oykez mongoDB]# vi mongodb.conf
复制代码
#端口号 默认27017
port=27017
#数据目录
dbpath = /usr/local/mongoDB/data/db
#日志文件
logpath = /usr/local/mongoDB/logs/mongoLogs.log
#设置后台运行
fork = true
#日志输出方式
logappend = true
复制代码
[root@izbp1b498epn4trb75oykez bin]# ./mongod --config /usr/local/mongoDB/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 6685
child process started successfully, parent exiting
./mongo链接测试库
[root@izbp1b498epn4trb75oykez bin]# ./mongo
复制代码
mongodb咱们已经安装完成,也成功启动链接上了测试库,但此时咱们./mongo启动的时候是默认不须要受权登陆的,这样并不安全,因此咱们须要建立管理员,以后启动及操做都须要受权登陆才能够进行。数据库
建立admin数据库,建立用户,设置帐号,密码,权限安全
> use admin
switched to db admin
> db.createUser({user:"root",pwd:"123456",roles:["root"]})
Successfully added user: { "user" : "root", "roles" : [ "root" ] }
复制代码
Tip: 若是你跟着个人步骤执行,结果密码也误设置成123456,那么这里提供两个修改密码的方法:bash
db.changeUserPassword("usertest","changepass")
usertest用户, changepass新密码db.updateUser("usertest",{pwd:"changepass1"})
> use admin
switched to db admin
> db.auth('root','123456');
1
> db.shutdownServer();
Wed Nov 14 06:07:33 DBClientCursor::init call() failed
Wed Nov 14 06:07:33 query failed : admin.$cmd { shutdown: 1.0 } to: 127.0.0.1:27017
server should be down...
Wed Nov 14 06:07:33 trying reconnect to 127.0.0.1:27017
Wed Nov 14 06:07:33 reconnect 127.0.0.1:27017 failed couldnt connect to server 127.0.0.1:27017
复制代码
[root@izbp1b498epn4trb75oykez mongoDB]# vi mongodb.conf
复制代码
配置文件内容服务器
#端口号 默认27017
port=27017
#绑定ip 默认127.0.0.1只容许本地链接
bind_ip = 0.0.0.0
#数据目录
dbpath = /usr/local/mongoDB/data/db
#日志文件
logpath = /usr/local/mongoDB/logs/mongoLogs.log
#设置后台运行
fork = true
#日志输出方式
logappend = true
#开启身份验证
auth = true
复制代码
重启app
[root@izbp1b498epn4trb75oykez bin]# ./mongod --config /usr/local/mongoDB/mongodb.conf
复制代码
1,以管理员帐号链接数据库
[root@izbp1b498epn4trb75oykez bin]# ./mongo 127.0.0.1:27017/admin --username "root" --password "123456"
2,建立数据库,建立帐号,给读写权限
> use blog
> db.createUser({user:"blogAdmin",pwd:"123456",roles:[{role:"readWrite",db:"blog"}]})
Successfully added user: {
"user" : "blogAdmin",
"roles" : [
{
"role" : "readWrite",
"db" : "blog"
}
]
}
复制代码
1,查看防火墙状态
[root@izbp1b498epn4trb75oykez redis]# systemctl status firewalld
2,开启27017端口
[root@izbp1b498epn4trb75oykez redis]# firewall-cmd --zone=public --add-port=27017/tcp --permanent
success
3,重启防火墙
[root@izbp1b498epn4trb75oykez redis]# firewall-cmd --reload
4,查看端口号是否开放成功,输出yes开放成功,no则失败
[root@izbp1b498epn4trb75oykez redis]# firewall-cmd --zone=public --query-port=27017/tcp
复制代码
import mongoose from 'mongoose';
const db = mongoose.connect('mongodb://blogAdmin:123456@[你的IP]:27017/blog', { useNewUrlParser: true }, err => {
if (err) {
console.log('出错---------->', err)
} else {
console.log('连接成功')
}
})
复制代码
Read:容许用户读取指定数据库
readWrite:容许用户读写指定数据库
dbAdmin:容许用户在指定数据库中执行管理函数,如索引建立、删除,查看统计或访问system.profile
userAdmin:容许用户向system.users集合写入,能够找指定数据库里建立、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户全部分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户全部数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户全部数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户全部数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户全部数据库的dbAdmin权限。
root:只在admin数据库中可用。超级帐号,超级权限。