登录到Linux服务器执行 lsb_release -a ,即可得知服务器的版本信息为:CentOS 7。
perl
# CentOS安装lsb_release包
[root@linux100 ~]# sudo yum install redhat-lsb
# 查看Linux版本
[root@linux100 ~]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.9.2009 (Core)
Release: 7.9.2009
Codename: Core
[root@linux100 ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[root@linux100 ~]# hostnamectl
Static hostname: linux100
Icon name: computer-vm
Chassis: vm
Machine ID: fb9d8715fff144aca93accad42cec460
Boot ID: 49ec505cca3d4052a6115b36a670e7e6
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-1160.25.1.el7.x86_64
Architecture: x86-64
需要在官网先确定系统对应的Mongo DB版本:平台支持的MongoDB版本比对
这里Linux服务器版本为CentOS 7 x86-64,则MongoDB选择7.0.8版本。
1 在官网下载安装包
MongoDB官网下载地址:MongoDB Enterprise Server Download | MongoDB
MongoDB从6.0.10及其之后版本中,bin目录下就没有mongo可执行文件,则需要单独安装官方客户端命令行工具MongoDB shell来连接进行数据库操作,它不支持图形用户页面。 官网下载地址:https://www.mongodb.com/try/download/shell。
如需使用其他MongoDB客户端工具可看该文章:MongoDB的安装(window环境)_windows下重装mongodb-CSDN博客文章浏览阅读649次,点赞7次,收藏11次。MongoDB shell是官方客户端命令行工具,不支持图形用户页面。_windows下重装mongodbhttps://blog.csdn.net/qq_39512532/article/details/135533903。
2 安装MongoDB
(1)将下载的两个压缩包上传到服务器的 /opt/software 路径下
perl
[root@linux100 ~]# cd /opt/software/
[root@linux100 software]# ll
总用量 12922
-rw-r--r--. 1 root root 154767684 4月 24 04:22 mongodb-linux-x86_64-enterprise-rhel70-7.0.8.tgz
-rw-r--r--. 1 root root 80612324 4月 24 05:09 mongosh-2.2.5-linux-x64.tgz
(2)解压文件到自定义目录 /opt/module/ 路径下并改名:
perl
# 文件解压缩
[root@linux100 software]# tar -zxvf mongodb-linux-x86_64-enterprise-rhel70-7.0.8.tgz -C /opt/module
[root@linux100 software]# tar -zxvf mongosh-2.2.5-linux-x64.tgz -C /opt/module
# 修改名称
[root@linux100 software]# cd /opt/module/
[root@linux100 module]# mv mongodb-linux-x86_64-enterprise-rhel70-7.0.8 mongodb-7.0.8
[root@linux100 module]# mv mongosh-2.2.5-linux-x64 mongosh-2.2.5
**扩展:**以下是两个文件bin目录下的文件列表
MongoDB的bin目录下文件详解:
|----------|------------------------|
| 文件名称 | 说明描述 |
| mongod | 服务器程序,用于启动 MongoDB 服务; |
| mongos | MongoDB 分片服务,用于管理分片集群; |
(3)创建MongoDB的数据存储目录和日志存储目录
perl
# 在mongodb-7.0.8文件下创建数据存储目录和日志存储目录
[root@linux100 module]# cd mongodb-7.0.8
[root@linux100 mongodb-7.0.8]# mkdir -p data
[root@linux100 mongodb-7.0.8]# mkdir -p log
[root@linux100 mongodb-7.0.8]# touch log/mongodb.log
(4)创建启动用的配置文件mongod.conf
perl
[root@linux100 mongodb-7.0.8]# mdkir config
[root@linux100 mongodb-7.0.8]# vim config/mongod.conf
mongod.conf配置以下内容:
数据存储位置
dbpath=/opt/module/mongodb-7.0.8/data/
日志存储位置
logpath=/opt/module/mongodb-7.0.8/log/mongodb.log
运行时占用端口
port=27017
fork为true指明以后台方式启动
fork=true
3 启动MongoDB及其客户端
perl
[root@linux100 mongodb-7.0.8]# cd bin
# 启动MongoDB服务端
[root@linux100 bin]# ./mongod -f /opt/module/mongodb-7.0.8/config/mongod.conf
about to fork child process, waiting until server is ready for connections.
forked process: 21418
child process started successfully, parent exiting
# 启动MongoDB客户端,默认连接本机的MongoDB服务(以默认端口连接),并进入到test数据库
[root@linux100 bin]# cd /opt/module/mongosh-2.2.5/bin/
[root@linux100 bin]# ./mongosh
Current Mongosh Log ID: 66285b69ce6a67cac62202d7
Connecting to: mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+2.2.5
Using MongoDB: 7.0.8
Using Mongosh: 2.2.5
For mongosh info see: https://docs.mongodb.com/mongodb-shell/
------
The server generated these startup warnings when booting
2024-04-24T09:07:39.038+08:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted
2024-04-24T09:07:39.038+08:00: You are running this process as the root user, which is not recommended
2024-04-24T09:07:39.038+08:00: This server is bound to localhost. Remote systems will be unable to connect to this server. Start the server with --bind_ip <address> to specify which IP addresses it should serve responses from, or with --bind_ip_all to bind to all interfaces. If this behavior is desired, start the server with --bind_ip 127.0.0.1 to disable this warning
2024-04-24T09:07:39.038+08:00: /sys/kernel/mm/transparent_hugepage/enabled is 'always'. We suggest setting it to 'never' in this binary version
2024-04-24T09:07:39.038+08:00: /sys/kernel/mm/transparent_hugepage/defrag is 'always'. We suggest setting it to 'never' in this binary version
2024-04-24T09:07:39.038+08:00: Soft rlimits for open file descriptors too low
------
Deprecation warnings:
- Using mongosh on the current operating system is deprecated, and support may be removed in a future release.
See https://www.mongodb.com/docs/mongodb-shell/install/#supported-operating-systems for documentation on supported platforms.
Enterprise test>
问题:
如果Mongodb服务和客户端不在同一台服务器,连接MongoDB服务连接不上!!!
在本地浏览器访问http://192.168.243.100:27017,访问失败!!!
解决方案:
(1)关闭MongoDB所在服务器防火墙,具体可参考下面链接:
Linux服务器防火墙的操作https://blog.csdn.net/qq_39512532/article/details/131229204(2)mongodb启动时需要绑定所在IP:
perl[root@linux100 ~]# cd /opt/module/mongodb-7.0.8/bin # 启动MongoDB服务端,并绑定该服务ip [root@linux100 bin]# ./mongod -f /opt/module/mongodb-7.0.8/config/mongod.conf --bind_ip 192.168.243.100 # 启动Mongodb客户端 [root@linux100 bin]# ./mongosh mongodb://192.168.243.100:27017
在浏览器中输入地址测试MongoDB是否启动成功:http://192.168.243.100:27017
4 操作数据库
MongoDB数据库的详细操作步骤可参考该链接:
MongoDB的数据库操作https://blog.csdn.net/qq_39512532/article/details/135533055
5 关闭MongoDB
perl
# 使用lsof命令查看MongoDB是否运行,也可找到该端口上运行的进程ID
[root@linux100 bin]# lsof -i :27017
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mongod 21418 root 15u IPv4 505796 0t0 TCP localhost:27017 (LISTEN)
# 关闭MongoDB服务
[root@linux100 bin]# kill -9 21418