CentOS/redhat安装mongoDB
一、安装mongoDB
下载安装文件 mongodb-linux-x86_64-rhel70-4.4.6.tgz
链接: https://download.csdn.net/download/maxy_2013/19096028
将文件上传至/user/local/目录下并解压
tar -zxvf mongodb-linux-x86_64-rhel70-4.4.6.tgz
解压完成后更改文件夹名称(个人习惯把版本号带上)
mv mongodb-linux-x86_64-rhel70-4.4.6 ./mongodb-rhel70-4.4.6
此时mongoDB的安装路径是/user/local/mongodb-rhel70-4.4.6/
默认地,在mongoDB启动后会创建数据库路径和日志路径,分别是/var/lib/mongo, /var/log/mongodb/
接下来手动创建数据库路径和日志路径
mkdir -p /var/lib/mongo
mkdir -p /var/log/mongodb/
二、配置环境变量
配置环境变量,启动时就不用写全路径,或者进入到解压路径启动了
编辑 /etc/profile
vi /etc/profile
切换为编辑模式后,写入环境变量
MONGO_HOME=/user/local/mongodb-rhel70-4.4.6
PATH=$MONGO _HOME/bin:$PATH
export PATH
保存并退出
立即生效
source /etc/profile
使用命令输出一下刚刚配置的环境变量
echo $PATH
如果输出内容中包含了mongoDB的路径,说明环境变量的配置生效了
三、mongoDB启动与停止
启动
mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork
输出如下内容,则标识启动成功:
about to fork child process, waiting until server is ready for connections.
forked process: 18168
child process started successfully, parent exiting
停止
mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --shutdown
输出如下内容。则标识成功停止mongoDB服务:
{"t":{"$date":"2021-05-27T00:11:15.306Z"},"s":"I", "c":"CONTROL", "id":20697, "ctx":"main","msg":"Renamed existing log file","attr":{"oldLogPath":"/var/log/mongodb/mongod.log","newLogPath":"/var/log/mongodb/mongod.log.2021-05-27T00-11-15"}}
killing process with pid: 18168
四、使用客户端访问
在Windows系统中安装 mongodb-compass-community-1.16.3-win32-x64.exe,测试是否能连接上刚安装的mongoDB。
如果有不知道如何安装的小伙伴们请前往查阅安装教程。
接下来开始用mongoDB compass连接服务器上的mongodb
输入IP和端口,点击下方的CONNECT按钮开始连接mongoDB
进行到此处突然报错,让我有点怀疑人生,检查了服务时开启的呢,端口也是27017,实在不知道怎么回事,也不知道如何才能连上服务。我想有可能跟服务绑定的ip有关系,一般绑定的IP是0.0.0.0才能够被外部主机访问到,经过查阅资料,还需要做一个配置才可以,下面继续我们的探索之路:
1、进入到mongoDB安装路径的bin目录下,新建配置文件
vi mongodb.conf
在文件中写入如下代码
dbpath=/var/lib/mongo #数据文件存放目录
logpath=/var/log/mongodb/mongod.log #日志文件存放目录
port=27017 #数据库端口
#fork=true #以守护方式运行,在后台运行
#auth=true #需要认证。如果放开注释,就必须创建MongoDB的账号,使用账号与密码才可远程访问,第一次安装建议注释
bind_ip=0.0.0.0 #允许远程访问,或者直接注释,127.0.0.1只允许本地访问
保存文档并退出
2、停止前面启动的服务,用配置文件启动服务
相对于增加配置文件之前,增加了 -f mongodb.conf
mongod -f mongodb.conf --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork
输出如下内容表示启动成功
about to fork child process, waiting until server is ready for connections.
forked process: 18279
child process started successfully, parent exiting
3、再次使用mongoDB compass连接服务
连接成功! 可以看到出现3个数据库,这是mongoDB默认的数据库
后续可以根据自己的需要,添加数据库和表(mongoDB中称为collection),也可以根据自己使用的语言来连接mongoDB数据库,通过代码操作数据的写入与查询,祝君成功!