MongoDB是一个开源的NoSQL数据库,它使用BSON(类似JSON)格式存储数据,MongoDB提供了多种启动方法,可以根据不同的需求和场景选择合适的启动方式,本文将对MongoDB数据库基础启动的不同方法进行归纳。
1、使用mongod命令启动
这是最基本的启动方式,直接使用mongod命令启动MongoDB服务,在命令行中输入以下命令:
mongod dbpath /data/db logpath /var/log/mongodb/mongodb.log fork
dbpath
指定数据库文件存放的路径,logpath
指定日志文件存放的路径,fork
表示以后台进程的方式运行。
2、使用配置文件启动
除了直接使用命令行参数启动MongoDB外,还可以使用配置文件来启动,在MongoDB的安装目录下,有一个名为mongod.conf
的配置文件,在该文件中,可以设置各种参数,如数据库路径、日志路径等。
可以在mongod.conf
文件中添加以下内容:
dbpath = /data/db logpath = /var/log/mongodb/mongodb.log
在命令行中输入以下命令启动MongoDB:
mongod config /etc/mongod.conf
3、使用服务管理工具启动
对于Linux系统,可以使用systemd或init.d等服务管理工具来管理MongoDB服务,以下是使用systemd启动MongoDB的方法:
创建一个名为mongodb.service
的文件,内容如下:
[Unit] Description=MongoDB Database Server After=network.target [Service] User=mongodb Group=mongodb ExecStart=/usr/bin/mongod dbpath /data/db logpath /var/log/mongodb/mongodb.log fork ExecReload=/bin/kill s HUP $MAINPID KillMode=process TimeoutSec=infinity Restart=always RestartSec=10s StartLimitInterval=0 SendSIGKILL=no SendSIGHUP=yes WatchdogSec=0 PidFile=/var/run/mongodb/mongod.pid StorageEngine=wiredTiger WiredTigerCollectionConfigString=block_compressor=zlib WiredTigerConcurrentReadTransactions=16 WiredTigerConcurrentWriteTransactions=85 WiredTigerEngineConfigString=cache_size=4G WiredTigerIndexPrefixCompression=true WiredTigerJournalCompressor=snappy WiredTigerLSMConfigString=percent_committing_threshold=95,small_files_threshold=128MB,large_object_chunk_size=2GB,metadata_cache_size=1GB,file_manager_max_open_files=10000,wal_buffers=16MB,read_request_timeout_millis=60000,journal_checksumming=true,journal_compression=true,compression_algorithm=snappy,num_index_blocks=1024,prefix_compression=true,compression_ratio=(50:1) # 压缩比例为50:1,可根据实际需求调整 ListenAddresses=127.0.0.1,192.168.1.100 # 监听地址,可根据实际情况修改
将该文件复制到/etc/systemd/system/
目录下,并赋予执行权限:
sudo cp mongodb.service /etc/systemd/system/mongodb.service sudo chmod +x /etc/systemd/system/mongodb.service
使用以下命令启动MongoDB服务:
sudo systemctl start mongodb.service
4、使用Docker容器启动
对于开发者来说,使用Docker容器部署MongoDB是一种非常方便的方式,需要安装Docker环境,从Docker Hub上拉取MongoDB镜像:
docker pull mongo:latest
接下来,创建一个名为mongodb.conf
的配置文件,内容如下:
storage: dbPath: /data/db # 数据库文件存放路径,可根据实际情况修改 journal: true # 启用日志功能,可根据实际情况修改 systemLog: # 日志配置,可根据实际情况修改 destination: file # 日志输出目标为文件,可根据实际情况修改 path: /var/log/mongodb/mongodb.log # 日志文件存放路径,可根据实际情况修改 net: # 网络配置,可根据实际情况修改 bindIp: 127.0.0.1 # 绑定IP地址,可根据实际情况修改 port: 27017 # 端口号,可根据实际情况修改 processManagement: # 进程管理配置,可根据实际情况修改 fork: true # 以后台进程的方式运行,可根据实际情况修改
使用以下命令启动MongoDB容器:
docker run d name mongodb v /data/db:/data/db v /var/log/mongodb:/var/log/mongodb v mongodb.conf:/etc/mongod.conf p 27017:27017 mongo:latest config /etc/mongod.conf replSet myReplSet # replSet参数表示启用副本集功能,可根据实际情况修改副本集名称和配置信息,如果不需要副本集功能,可以省略该参数,还可以根据实际需求调整其他参数,可以调整端口号、绑定IP地址等,需要注意的是,如果使用了多个卷映射(volume mapping),需要确保它们的顺序正确,否则,可能会导致数据丢失或无法正常启动。
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/510729.html