快速搭建属于自己的mongodb数据库

本文详细介绍了MongoDB在Windows 10系统下的安装步骤及常见问题解决方案,包括配置环境变量、设置服务、解决启动错误等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

MongoDB 是一个基于分布式文件存储的数据库。由C++语言编写,支持Windows,Linux,OSX,Solaris等平台,默认端口为27017,是一个效率非常高的nosql数据库。

我的测试环境:window10  64位

我的安装路径:D:\mongodb

我学习mongodb的笔记本:MongoDB

配置mongodb我也遇到了两个关键性的问题,记录这篇博客希望搭建mongodb的同行者,可以顺利完成配置。

安装

下载地址:http://www.mongodb.org/downloads

选择下载版本:

我下载的是最新版本的zip格式。

需要注意的是:

1、从mongodb2.2版本开始,mongodb不在支持windowXp

参考:心知博客

PLATFORM SUPPORT
Starting in version 2.2, MongoDB does not support Windows XP. Please use a more recent version of Windows to use more recent releases of MongoDB.

2、如果运行系统为windows server 2008 R2 或者 window 7,需要进入微软官网下载补丁

IMPORTANT
If you are running any edition of Windows Server 2008 R2 or Windows 7, please install a hotfix to resolve an issue with memory mapped files on Windows.

并且这里需要特别注意:
下载完成后会得到一个exe文件,但是这里并不能直接对这个文件进行安装,需要先将其解压,解压后得到 Windows6.1-KB2731284-v3-x64.msu 文件,这时候才可以进行安装,之后重启即可

3、64位的MongoDB将不能在32位的windows上运行启动

配置

1、创建一个用于存放mongodb数据的目录,

这里我创建在D:\mongodb\data\db,打开cmd(这里我用的Git Bash),进入到mongodb的bin目录,运行下面命令

mongod --dbpath="D:\mongodb\data\db"

然后出现了我遇到的第一个问题

2016-12-29T22:30:02.229+0800 I CONTROL  [initandlisten] MongoDB starting : pid=10220 port=27017 dbpath=C:\Program Files\MongoDB\db 64-bit host=Lenovo
2016-12-29T22:30:02.234+0800 I CONTROL  [initandlisten] targetMinOS: Windows 7/Windows Server 2008 R2
2016-12-29T22:30:02.235+0800 I CONTROL  [initandlisten] db version v3.4.1
2016-12-29T22:30:02.237+0800 I CONTROL  [initandlisten] git version: 5e103c4f5583e2566a45d740225dc250baacfbd7
2016-12-29T22:30:02.238+0800 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.1t-fips  3 May 2016
2016-12-29T22:30:02.240+0800 I CONTROL  [initandlisten] allocator: tcmalloc
2016-12-29T22:30:02.241+0800 I CONTROL  [initandlisten] modules: none
2016-12-29T22:30:02.241+0800 I CONTROL  [initandlisten] build environment:
2016-12-29T22:30:02.243+0800 I CONTROL  [initandlisten]     distmod: 2008plus-ssl
2016-12-29T22:30:02.244+0800 I CONTROL  [initandlisten]     distarch: x86_64
2016-12-29T22:30:02.245+0800 I CONTROL  [initandlisten]     target_arch: x86_64
2016-12-29T22:30:02.246+0800 I CONTROL  [initandlisten] options: { storage: { dbPath: "C:\Program Files\MongoDB\db" } }
2016-12-29T22:30:02.249+0800 I STORAGE  [initandlisten] exception in initAndListen: 20 Attempted to create a lock file on a read-only directory: C:\Program Files\MongoDB\db, terminating
2016-12-29T22:30:02.251+0800 I NETWORK  [initandlisten] shutdown: going to close listening sockets...
2016-12-29T22:30:02.255+0800 I NETWORK  [initandlisten] shutdown: going to flush diaglog...
2016-12-29T22:30:02.256+0800 I CONTROL  [initandlisten] now exiting
2016-12-29T22:30:02.257+0800 I CONTROL  [initandlisten] shutting down with code:100

最后出现shutting down with code :100,

在心知博客我找到了答案,原因在于:我们进入的命令提示符只是普通模式,所以出现无法创建文件的问题,切换到管理员模式,重新运行命令:

然后就可以正常启动。

2、我把mongo命令添加到path环境变量中,

这样我就不需要每次都进入到mongodb下的bin中执行mongo命令了。

3、把mongodb设置为windows服务,

采用管理员:命令提示符,切换到安装mongodb目录的bin目录,运行下面命令,把MongoDB设置为Windows服务:

mongod --dbpath="D:\mongodb\data\db" --logpath="D:\mongodb\data\log" --logappend --directoryperdb --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install

参数解读:

 --dbpath="D:\mongodb\data\db"   mongodb的数据目录

 --logpath="D:\mongodb\data\log" --logappend   指定日志文件。并且日志是以追加的方式输出的

 --serviceName "MongoDB" --serviceDisplayName "MongoDB"   windows服务器名称和显示名称为MongoDB

 --directoryperdb   表示每个db都会新建一个目录

 --install        进行安装,与之相对的是--remove

启动停止mongodb服务的命令
启动MongoDB:net start MongoDB
停止MongoDB:net stop MongoDB

然后我遇到了第二个问题,服务器安装成功之后,进行启动,发现无法启动,查看log日志文件,有这样的信息:

2016-12-29T23:51:23.705+0800 I CONTROL  [initandlisten] options: { service: true, storage: { dbPath: "D:\mongodb\data\db", directoryPerDB: true }, systemLog: { destination: "file", logAppend: true, path: "D:\mongodb\data\log\mongodb.log" } }
2016-12-29T23:51:23.706+0800 I -        [initandlisten] Detected data files in C:\Program Files\MongoDB\db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
2016-12-29T23:51:23.707+0800 I STORAGE  [initandlisten] exception in initAndListen: 72 Requested option conflicts with current storage engine option for directoryPerDB; you requested true but the current server storage is already set to false and cannot be changed, terminating
2016-12-29T23:51:23.707+0800 I NETWORK  [serviceStopWorker] shutdown: going to close listening sockets...
2016-12-29T23:51:23.707+0800 I NETWORK  [serviceStopWorker] shutdown: going to flush diaglog...
2016-12-29T23:51:23.707+0800 I CONTROL  [serviceStopWorker] now exiting
2016-12-29T23:51:23.707+0800 I CONTROL  [serviceStopWorker] shutting down with code:49

 

大致意思就是说存储引擎冲突,(之前在命令行启动过mongodb服务,然后就在数据目录生成了数据文件)

这个时候我们可以到数据目录中找到storage.bson这个文件,删除即可。

 

我们可以通过添加到环境变量中的mongo命令来启动数据库,这样我们就可以通过命令行来执行一些操作了

 

 到这里我们已经能正常使用mongodb来执行工作了,我遇到的两个问题在心知博客中也找到了答案。

后记

  我的mongodb的笔记本主要是记录mongo文档的学习情况,会不断更新。

  

  博客会分享一些开发中的心得以及学习阶段遇到的问题最后得以解决,都会坚持下去,也很开心每天都能看到博客园里有很多人分享知识。

 

转载于:https://www.cnblogs.com/okaychen/p/7404885.html

### 构建个性化人工智能系统的概述 构建个性化的 AI 系统通常需要综合考虑多个方面,包括但不限于数据收集、模型训练、部署和持续优化。以下是关于如何搭建个性化人工智能系统的一些核心方法和工具: #### 数据准备阶段 在这一阶段,重点在于获取高质量的数据集并对其进行预处理。这一步对于后续的模型性能至关重要。 | 方法 | 描述 | | --- | --- | | 用户行为数据分析 | 收集用户的历史交互记录,如点击率、停留时间等,用于建立用户画像[^1]。 | | 上下文信息提取 | 结合场景中的环境变量(例如地理位置、设备类型),增强推荐的相关性和准确性[^1]。 | #### 模型设计与开发 此部分涉及到具体的技术选型和技术栈的选择。 ```python import tensorflow as tf from tensorflow.keras import layers, models def create_model(input_shape): model = models.Sequential() model.add(layers.Dense(128, activation='relu', input_shape=input_shape)) model.add(layers.Dropout(0.5)) model.add(layers.Dense(64, activation='relu')) model.add(layers.Dense(1)) # 输出层 return model ``` 以上是一个简单的神经网络模型示例,适用于某些回归或分类任务。实际应用中可根据业务需求调整架构复杂度[^3]。 #### 部署与监控 完成模型训练之后,还需要将其集成到生产环境中,并设置相应的监控机制来保障服务质量。 - 使用容器化技术(Docker/Kubernetes)简化微服务管理过程。 - 实施 A/B Testing 方案评估不同版本之间的差异表现效果[^2]。 --- ### 工具推荐列表 | 类别 | 名称 | 功能简介 | |------------|--------------------------|--------------------------------------------------------------------------------------------| | 开发框架 | TensorFlow / PyTorch | 提供强大的深度学习支持 | | 自然语言处理 | Hugging Face Transformers | 能够快速加载预训练的语言模型 | | 数据存储 | MongoDB | NoSQL 数据库适合灵活存储非结构化文档 | | 可视化分析 | Tableau Public | 创建互动图表分享给团队成员 | 通过合理组合这些资源可以帮助开发者更高效地推进项目进展。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值