MongoDB入门到进阶笔记:01-Linux 单机版MongoDB安装
下载安装包
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-5.0.13.tgz
[root@5e7b4039fa6f data]# pwd
/data
[root@5e7b4039fa6f data]# ll
total 84540
-rw-r--r--. 1 root root 86567530 Nov 2 07:41 mongodb-linux-x86_64-rhel70-5.0.13.tgz
解压安装包
[root@5e7b4039fa6f data]# tar -xzvf mongodb-linux-x86_64-rhel70-5.0.13.tgz
mongodb-linux-x86_64-rhel70-5.0.13/LICENSE-Community.txt
mongodb-linux-x86_64-rhel70-5.0.13/MPL-2
mongodb-linux-x86_64-rhel70-5.0.13/README
mongodb-linux-x86_64-rhel70-5.0.13/THIRD-PARTY-NOTICES
mongodb-linux-x86_64-rhel70-5.0.13/bin/install_compass
mongodb-linux-x86_64-rhel70-5.0.13/bin/mongo
mongodb-linux-x86_64-rhel70-5.0.13/bin/mongod
mongodb-linux-x86_64-rhel70-5.0.13/bin/mongos
改名称为mongo
[root@5e7b4039fa6f data]# mv mongodb-linux-x86_64-rhel70-5.0.13/ mongodb
[root@5e7b4039fa6f data]#
[root@5e7b4039fa6f data]# ll
total 0
drwxr-xr-x. 3 root root 100 Nov 2 07:43 mongodb
配置环境变量
vi /etc/profile
export PATH=$PATH:/data/mongodb/bin
查看版本
[root@5e7b4039fa6f data]# mongod -version
db version v5.0.13
Build Info: {
"version": "5.0.13",
"gitVersion": "cfb7690563a3144d3d1175b3a20c2ec81b662a8f",
"openSSLVersion": "OpenSSL 1.0.1e-fips 11 Feb 2013",
"modules": [],
"allocator": "tcmalloc",
"environment": {
"distmod": "rhel70",
"distarch": "x86_64",
"target_arch": "x86_64"
}
}
创建目录
[root@5e7b4039fa6f mongodb]# mkdir data logs
[root@5e7b4039fa6f mongodb]# ll
total 136
-rw-r--r--. 1 root root 30608 Sep 29 11:18 LICENSE-Community.txt
-rw-r--r--. 1 root root 16726 Sep 29 11:18 MPL-2
-rw-r--r--. 1 root root 1977 Sep 29 11:18 README
-rw-r--r--. 1 root root 77913 Sep 29 11:18 THIRD-PARTY-NOTICES
drwxr-xr-x. 2 root root 70 Nov 2 07:43 bin
drwxr-xr-x. 2 root root 6 Nov 2 07:54 data
drwxr-xr-x. 2 root root 6 Nov 2 07:54 logs
创建配置文件
[root@5e7b4039fa6f mongodb]# vi mongod.cnf
systemLog:
destination: file
logAppend: true
path: /data/mongodb/logs/mongodb.log
storage:
dbPath: /data/mongodb/data
journal:
enabled: true
processManagement:
fork: true
net:
port: 27017
bindIp: 0.0.0.0
# 如果是公网服务器,学习的时候,建议监听在127.0.0.1:2017
启动 mongodb
[root@5e7b4039fa6f mongodb]# mongod -f mongod.cnf
about to fork child process, waiting until server is ready for connections.
forked process: 604
child process started successfully, parent exiting
启动验证
[root@5e7b4039fa6f mongodb]# ps -ef|grep mongod
root 604 1 1 07:58 ? 00:00:02 mongod -f mongod.cnf
root 864 357 0 08:02 pts/0 00:00:00 grep --color=auto mongod
[root@5e7b4039fa6f mongodb]#
[root@5e7b4039fa6f mongodb]# netstat -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 604/mongod
tcp 0 0 127.0.0.11:40460 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 159/sshd
tcp6 0 0 :::22 :::* LISTEN 159/sshd
登录验证
[root@5e7b4039fa6f mongodb]# mongo
MongoDB shell version v5.0.13
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { “id” : UUID(“08b61839-9951-4d81-975b-f48adc444eb1”) }
MongoDB server version: 5.0.13
Warning: the “mongo” shell has been superseded by “mongosh”,
which delivers improved usability and compatibility.The “mongo” shell has been deprecated and will be removed in
an upcoming release.
For installation instructions, see
https://docs.mongodb.com/mongodb-shell/install/
The server generated these startup warnings when booting:
2022-11-02T07:58:55.843+00:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted
2022-11-02T07:58:55.843+00:00: You are running this process as the root user, which is not recommended
2022-11-02T07:58:55.843+00:00: /sys/kernel/mm/transparent_hugepage/enabled is ‘always’. We suggest setting it to ‘never’
2022-11-02T07:58:55.843+00:00: /sys/kernel/mm/transparent_hugepage/defrag is ‘always’. We suggest setting it to ‘never’
Enable MongoDB's free cloud-based monitoring service, which will then receive and display
metrics about your deployment (disk utilization, CPU, operation statistics, etc).
The monitoring data will be available on a MongoDB website with a unique URL accessible to you
and anyone you share the URL with. MongoDB may use this information to make product
improvements and to suggest MongoDB products and deployment options to you.
To enable free monitoring, run the following command: db.enableFreeMonitoring()
To permanently disable this reminder, run the following command: db.disableFreeMonitoring()
show databases;
admin 0.000GB
config 0.000GB
local 0.000GB
关闭数据库
mongo
use admin;
switched to db admin
db.shutdownServer()
server should be down…
其他不建议关闭方式
kill 关闭#不建议,后续介绍正确的关闭方法
kill -9和突然断电可能会导致mongodb数据的丢失