Mongodb 3.6安装过程(centos7.9)
1. centos 版本
为了尽可能一致,首先记录centos版本:
[root@bogon ~]# uname -r
3.10.0-1160.62.1.el7.x86_64
[root@bogon ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[root@bogon ~]# rpm -q centos-release
centos-release-7-9.2009.1.el7.centos.x86_64
[root@bogon ~]# cat /proc/version
Linux version 3.10.0-1160.62.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Tue Apr 5 16:57:59 UTC 2022
2. 下载
选择安装3.6版本
MongoDB Community Download | MongoDB
右侧选择版本,package里面有mongos、server、shell三个包要下载,下载rpm版本的。
具体连接:
https://repo.mongodb.org/yum/redhat/7/mongodb-org/3.6/x86_64/RPMS/mongodb-org-mongos-3.6.23-1.el7.x86_64.rpm
https://repo.mongodb.org/yum/redhat/7/mongodb-org/3.6/x86_64/RPMS/mongodb-org-shell-3.6.23-1.el7.x86_64.rpm
https://repo.mongodb.org/yum/redhat/7/mongodb-org/3.6/x86_64/RPMS/mongodb-org-server-3.6.23-1.el7.x86_64.rpm
3. 安装
安装三个rpm包,
rpm -ivh mongodb-org-shell-3.6.23-1.el7.x86_64.rpm
rpm -ivh mongodb-org-server-3.6.23-1.el7.x86_64.rpm
rpm -ivh mongodb-org-mongos-3.6.23-1.el7.x86_64.rpm
4. 作为服务启动
systemctl start mongod.service
systemctl enable mongod.service
5. 登录
# 默认安装完成只能够本地登录
mongo
6. 允许远程登录
# 允许远程登录需要修改配置文件
vi /etc/mongod.conf
配置文件中原有指定127.0.0.1,改为本机ip,centos下查看ip命令为“ip addr”
# network interfaces
net:
port: 27017
# bindIp: 127.0.0.1
bindIp: 10.1.52.76 # Listen to local interface only, comment to listen on all interfaces.
重启服务
systemctl restart mongod.service
# 重启后登录时要指定ip
mongo 10.1.52.76
7. 测试
a. 登录
[root@bogon ~]# mongo 10.1.52.76
MongoDB shell version v3.6.23
connecting to: mongodb://10.1.52.76:27017/test?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("06ed5411-67af-453a-8422-148a5117f4b9") }
MongoDB server version: 3.6.23
Server has startup warnings:
2022-04-18T22:17:48.710-0400 I CONTROL [initandlisten]
2022-04-18T22:17:48.710-0400 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2022-04-18T22:17:48.710-0400 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2022-04-18T22:17:48.710-0400 I CONTROL [initandlisten]
2022-04-18T22:17:48.712-0400 I CONTROL [initandlisten]
2022-04-18T22:17:48.712-0400 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2022-04-18T22:17:48.712-0400 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2022-04-18T22:17:48.712-0400 I CONTROL [initandlisten]
2022-04-18T22:17:48.712-0400 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2022-04-18T22:17:48.712-0400 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2022-04-18T22:17:48.712-0400 I CONTROL [initandlisten]
>
b. 操作
> show dbs;
admin 0.000GB
config 0.000GB
dockerlog 0.000GB
local 0.000GB
loglog 0.000GB
sysloglog 0.000GB
> db.getMongo();
connection to 10.1.52.76:27017
> use sysloglog
switched to db sysloglog
> db.getName();
sysloglog
> db.getCollectionNames();
[ "logcoll" ]
> db.stats();
{
"db" : "sysloglog",
"collections" : 1,
"views" : 0,
"objects" : 94,
"avgObjSize" : 1820.5531914893618,
"dataSize" : 171132,
"storageSize" : 86016,
"numExtents" : 0,
"indexes" : 1,
"indexSize" : 32768,
"fsUsedSize" : 3981176832,
"fsTotalSize" : 53660876800,
"ok" : 1
}
> db.version();
3.6.23
> db.logcoll.count();
94
> db.logcoll.find().limit(2);
......# 数据太大,省略
c. 退出
> exit
bye