1. MongoDB安装
首先,我们需要在MongoDB官网中下载安装程序:https://www.mongodb.com/try/download/community,选择相应的版本并按照提示进行安装。
安装成功后,我们可以通过MongoDB提供的命令行工具mongod.exe启动MongoDB服务,如下所示:
mongod.exe --dbpath "E:\MongoDB\data"
其中,--dbpath参数指定MongoDB数据存储的目录,需要自行创建并指定。如果成功启动,那么服务会在控制台输出如下信息:
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] MongoDB starting : pid=6524 port=27017 dbpath=E:\MongoDB\data 64-bit host=xxx
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] targetMinOS: Windows 7/Windows Server 2008 R2
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] db version v5.0.2
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] git version: e4b8eb1b389f5db140add6b60511815cdbc35d98
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.1.1k 25 Mar 2021
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] allocator: tcmalloc
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] modules: none
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] build environment:
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] distmod: windows-64
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] distarch: x86_64
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] target_arch: x86_64
2021-07-30T16:07:02.206+0800 I CONTROL [initandlisten] options: { storage: { dbPath: "E:\MongoDB\data" } }
2021-07-30T16:07:02.255+0800 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=7680M,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),compatibility=(release="3.0",require_max="3.0"),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),verbose=(recovery_progress),
2021-07-30T16:07:02.786+0800 I STORAGE [initandlisten] WiredTiger message [1627616822:786352][6524:140716695078656], txn-recover: Set global recovery timestamp: (0, 0)
2021-07-30T16:07:03.369+0800 I RECOVERY [initandlisten] WiredTiger recoveryTimestamp. Ts: Timestamp(0, 0)
2021-07-30T16:07:03.413+0800 I CONTROL [initandlisten]
2021-07-30T16:07:03.413+0800 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2021-07-30T16:07:03.413+0800 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2021-07-30T16:07:03.413+0800 I CONTROL [initandlisten]
2021-07-30T16:07:03.415+0800 I SHARDING [initandlisten] Marking collection local.system.replset as collection version:
2021-07-30T16:07:03.415+0800 I STORAGE [initandlisten] createCollection: local.startup_log with provided UUID: d9e49a26-ceba-4fc8-b703-0b0eedd25a97 and options: { capped: true, size: 10485760 }
2021-07-30T16:07:03.426+0800 I INDEX [initandlisten] index index-1587898570.1581763.$_id_ created with default settings on collection
local.startup_log
2021-07-30T16:07:03.438+0800 I STORAGE [initandlisten] createCollection: local.replset.oplogTruncateAfterPoint with provided UUID: 1f76a9df-54f4-4646-98c4-5fbfd4676b68 and options: { capped: true, size: 1073741824 }
2021-07-30T16:07:03.475+0800 I REPL [initandlisten] Starting replication subsystems
2021-07-30T16:07:03.475+0800 I REPL [initandlisten] Parsing configuration options for primary: { _id: 0, host: "xxx:27017", processId: ObjectId('663fa8287f3f15b1eac3b0c246a929a5') }
2021-07-30T16:07:03.475+0800 I REPL [initandlisten] StartupMsg: Starting replication agent with pid=6524. Theoretical max oplog already on machine is: 270MB
2021-07-30T16:07:03.475+0800 I REPL [initandlisten]
2021-07-30T16:07:03.475+0800 I NETWORK [initandlisten] waiting for connections on port 27017
如果要停止MongoDB服务,可以在控制台中使用Ctrl+C或者通过命令行工具mongod.exe加上--shutdown参数来停止服务:
mongod.exe --shutdown
2. MongoDB作为Windows服务启动
如果我们希望MongoDB在Windows系统启动时自动启动,并以服务形式运行,那么我们需要再安装MongoDB的基础上进行以下操作:
2.1 创建配置文件
在MongoDB的安装路径下,创建mongod.cfg文件,并添加以下内容:
systemLog:
destination: file
path: E:\MongoDB\logs\mongod.log
logAppend: true
storage:
dbPath: E:\MongoDB\data
journal:
enabled: true
processManagement:
windowsService:
serviceName: MongoDB
displayName: MongoDB
description: MongoDB Server
net:
bindIp: xxx.xxx.xxx.xxx
port: 27017
ssl:
mode: requireSSL
PEMKeyFile: E:\MongoDB\ssl\mongodb.pem
CAFile: E:\MongoDB\ssl\mongodb-ca.pem
其中,systemLog节点指定MongoDB服务的日志文件路径,storage节点指定数据存储目录,processManagement节点指定服务相关配置,net节点指定MongoDB服务的网络相关配置。需要根据实际情况进行修改。
2.2 安装MongoDB服务
在命令行工具中使用mongod.exe,加上--config参数指向配置文件,以安装MongoDB服务:
mongod.exe --config "E:\MongoDB\mongod.cfg" --install
2.3 启动MongoDB服务
使用Windows服务管理器启动MongoDB服务,或者使用命令行工具net start MongoDB命令启动MongoDB服务。
3. MongoDB作为Windows服务停止
在命令行工具中使用mongod.exe,加上--remove参数即可删除MongoDB服务:
mongod.exe --remove
或者使用Windows服务管理器停止MongoDB服务。
4. 总结
本文介绍了如何在Windows系统中安装MongoDB、如何使用命令行工具启动和停止MongoDB服务,以及如何将MongoDB作为Windows服务启动。MongoDB是一个高性能、开源、面向文档的NoSQL数据库,具有分布式能力、高可用性、自动分片等功能,非常适用于大规模、高并发、复杂数据结构的场景。