MongoDB的下载与安装
下载MongoDB
下载地址:https://www.mongodb.com/download-center/community
安装MongoDB
在Linux平台的MongoDB为解压版。我们只要解压tgz文件就可以使用。
安装依赖
MongoDB4.2.3需要依赖openssl10相关资源,必须先在Linux中安装openssl10。
把compat-openssl10-1.0.2o-3.el8.x86_64.rpm上传到/opt中
代码语言:javascript复制# yum install -y make
# cd /opt
# rpm -i compat-openssl10-1.0.2o-3.el8.x86_64.rpm
上传tgz文件到Linux
解压缩
代码语言:javascript复制# tar zxf mongodb-linux-x86_64-rhel80-4.2.3.tgz
移动
解压后的目录放入到/usr/local中并命名为mongodb
代码语言:javascript复制# cp -r mongodb-linux-x86_64-rhel80-4.2.3 ../mongodb
创建数据存储目录
MongoDB的数据可以通过配置存储在任意目录下,在案例中存储在$MongoDB_HOME/data/db目录中,这个目录需要手动创建。
代码语言:javascript复制# cd /usr/local/mongodb
# mkdir -p data/db
创建日志存储目录
MongoDB的日志数据可以通过配置存储在任意目录下,在案例中存储在$MongoDB_HOME/logs目录中,且日志文件名为mongodb.logs。这个目录和日志文件需要手工创建
代码语言:javascript复制# mkdir logs
# touch logs/mongodb.log
至此MongoDB安装完毕
启动、停止和客户端连接
启动MongoDB
MongoDB的启动方式分为两种
- 前置启动
- 后置启动
无论哪种启动方式都需要执行bin目录中的mongod命令
前置启动
MongoDB的默认启动方式为前置启动。所谓前置启动就是MongoDB启动进程后会占用当前终端窗口。
命令为:
代码语言:javascript复制# cd /usr/local/mongodb/bin
# ./mongod --dbpath ../data/db
后置启动
所谓后置启动就是以守护进程的方式启动MongoDB。命令中的fork就是开启子进程。
命令为:
代码语言:javascript复制# cd /usr/local/mongodb/bin
# ./mongod --dbpath ../data/db --logpath ../logs/mongodb.log --fork
配置启动
命令启动并不适合管理,毕竟每次输入命令都需要考虑各参数的配置。可以通过配置文件来配置启动参数,这样在管理MongoDB上比较方便。
编辑配置文件
在mongodb/bin 下创建mongodb.conf
vim mongodb.conf
dbpath=/usr/local/mongodb/data/db/logpath=/usr/local/mongodb/logs/mongodb.logbind_ip_all=trueport=27017fork=true |
---|
port是端口,27017即默认的MongoDB端口号。
bind_ip_all是绑定所有IP,即所有客户端都可以访问。
启动
代码语言:javascript复制# ./mongod --config mongodb.conf
客户端访问
通过bin目录中的mongo来访问MongoDB服务器。
代码语言:javascript复制# ./mongo
停止MongoDB
前置启动关闭
使用ctrl c即可关闭
使用kill命令关闭
查看进程(包含进程号)
代码语言:javascript复制ps -aux | grep mongo
杀死进程
代码语言:javascript复制kill -9 进程号
mongod命令关闭
代码语言:javascript复制mongod --shutdown --dbpath <path>
案例 : ./mongod --shutdown --dbpath ../data/db/
MongoDB函数关闭
连接到MongoDB服务后,切换到admin库,并使用命令关闭服务。
代码语言:javascript复制use admin
db.shutdownServer()
db.runCommand(“shutdown”)
MongoDB的用户与权限管理
Mongodb作为时下最为热门的数据库,那么其安全验证也是必不可少的,否则一个没有验证的数据库暴露出去,任何人可随意操作,这将是非常危险的。我们可以通过创建用户的方式来降低风险。