`

mongodb 两个错误处理

阅读更多

 

mongos> db.person.remove()
Thu May 23 11:47:51.308 JavaScript execution failed: getlasterror failed: {
        "shards" : [
                "shard1/127.0.0.1:10000,127.0.0.1:10001,127.0.0.1:10002",
                "shard2/127.0.0.1:20000,127.0.0.1:20001,127.0.0.1:20002",
                "shard3/127.0.0.1:30000,127.0.0.1:30001,127.0.0.1:30002"
        ],
        "ok" : 0,
        "errmsg" : "could not get last error from a shard shard3/127.0.0.1:30000,127.0.0.1:30001,127.0.0.1:30002 :: caused by :: DBClientBase::findN: transport error: 127.0.0.1:30002 ns: test.$cmd query: { getlasterror: 1.0, w: 1.0 }"
} at src/mongo/shell/db.js:L698
mongos> db.person.count()
Thu May 23 11:50:40.491 JavaScript execution failed: count failed: {
        "code" : 10009,
        "ok" : 0,
        "errmsg" : "exception: ReplicaSetMonitor no master found for set: shard3"
} at src/mongo/shell/query.js:L180
mongos> db.person.drop()
Thu May 23 11:51:53.059 JavaScript execution failed: drop failed: {
        "code" : 10009,
        "ok" : 0,
        "errmsg" : "exception: ReplicaSetMonitor no master found for set: shard3"
} at src/mongo/shell/collection.js:L383

 这是错误表示服务器死了,在linux下用ps -ef|grep mongod查看mongodb的在linux进程,查看那台服务器死了。重新启动服务器后就没事了。

error preparing documents for insert :: caused by :: tried to insert object with no valid shard key for { id: 1.0 } : { _id: ObjectId('519b4094a213ce733bd63abd'), name: "test" }

  这个错误表示要指定分片的键。

分片的键表示:添加数据的时候必要有这个键作为字段。是否添加不成功!

也就是如下操作:

db.runCommand({shardcollection:"test.c1",key:{id:1}})  

 这里指定的key(键)是id,那么添加数据的时候,就必须要有字段id。否则添加不成功!

 

自己在使用的过程中遇到的错误,如果有新的错误及时添加上。

分享到:
评论

相关推荐

    springMVC集成mongoDB的demo

    在IT行业中,SpringMVC和MongoDB是两个非常重要的技术组件。SpringMVC是Spring框架的一个模块,专门用于构建Web应用程序,而MongoDB则是一种流行的NoSQL数据库系统,以其灵活性和处理非结构化数据的能力而著称。在这...

    MongoDB离线手册(含一个简易版和完全版)

    这份"MongoDB离线手册"包含了两个版本,一个是简易版,另一个是完全版,旨在帮助用户深入理解和掌握MongoDB的各个方面。 简易版手册可能侧重于基础操作,如数据的插入、查询、更新和删除,也就是常说的CRUD操作。它...

    mongodb driver

    MongoDB驱动通常包括连接管理、数据序列化/反序列化以及错误处理等功能。 2. CSharpDriverDocs.chm: 这个文件是C#驱动的离线帮助文档,包含了关于如何使用C#驱动的详细信息。开发者可以通过查阅这个文档来了解如何...

    Python Library-mongodblibrary

    8. **错误处理**:`Should Exist Document`和`Should Not Exist Document`是断言关键字,用于验证文档是否存在。类似地,还有其他断言关键字,如`Should Be Equal As Documents`用于比较两个文档是否相等。 9. **...

    MongoDB+MVC上传例子

    8. **错误处理**:添加适当的错误处理机制,例如检查文件大小、类型,处理上传失败的情况。 9. **查询和下载**:创建另外的Controller Action用于查询文件并提供文件下载。通过GridFSBucket的OpenDownloadStream...

    tp6+mongodb.zip

    《深入解析ThinkPHP6与MongoDB的整合及...通过解决适配器的问题和优化查询性能,我们可以充分利用这两个工具的优势,构建出高效、可扩展的Web应用。在这个过程中,不断学习和探索,对提升我们的IT专业技能大有裨益。

    MongoDb C++ win32 驱动

    这两个库需要先编译并链接到你的项目中。`MongoDb.lib`是预编译的库文件,可能需要根据你的系统配置进行调整。 4. **Boost库**:在某些版本的MongoDB C++驱动中,可能会用到Boost库。根据`Boost库的编译.txt`,你...

    Codeigniter集成mongodb

    8. **错误处理**:在CI中,你可以通过捕获异常或检查返回值来处理MongoDB操作可能抛出的错误。 9. **测试**:描述中提到了`test`,这可能是一个测试文件或目录,用于验证MongoDB集成的功能。通过编写测试用例,你...

    express + MongoDB实现学生管理系统(mongoose).zip

    - **错误处理**:添加错误处理中间件,确保系统在遇到问题时能够优雅地处理并返回适当的错误信息。 通过以上描述,我们可以了解到这个项目的基本架构和技术栈,但具体的实现细节需要查看源代码才能进一步了解。

    SqlServer数据导入MongoDB

    5. 错误处理与验证:在迁移过程中,务必监控并处理可能出现的错误,如数据类型不匹配、数据丢失等问题。导入完成后,进行数据校验,确保源数据库和目标数据库中的数据一致。 6. 应用层调整:如果应用程序依赖于SQL ...

    java 操作mongodb

    【Java 操作 MongoDB 知识点详解】 MongoDB 是一个流行的开源、分布式文档数据库系统,以其灵活性、高性能和高可用性而受到欢迎。...通过不断学习和实践,开发者可以更好地利用这两个工具来构建高效的应用程序。

    MongoDBjava驱动源码程序

    7. **GridFS**: 用于存储大型文件,如图片或视频,它将文件拆分为多个小块并存储在两个特殊的集合中。 深入源码,我们可以学习到如何实现这些功能,以及如何处理错误、监控性能、实现安全认证等。例如,连接管理...

    使用aggregate在MongoDB中查询重复数据记录的方法

    例如,如果我们想找出`firstField`和`secondField`字段组合的重复记录,可以设置`_id`字段为这两个字段的值,然后使用`$addToSet`收集每个组的唯一`_id`,并使用`$sum`计算文档数量: ```javascript db.collection....

    python2.7导入shp文件到mongodb

    为了实现这一目标,我们需要安装并配置两个关键组件:GDAL(用于读取.shp文件)和pymongo(用于与MongoDB交互)。此外,我们还将用到Progressbar模块来显示数据导入进度。 #### 安装GDAL for Python GDAL...

    navicat121_mongodb_cs_x64+navicat121_mongodb_cs_x86.rar

    标题中的"navicat121_mongodb_cs_x64+navicat121_mongodb_cs_x86.rar"指示了这是一个包含两个版本的Navicat for MongoDB安装程序的压缩包,一个是针对64位操作系统(x64),另一个是针对32位操作系统(x86)。...

    MongoDB C++ Driver 3.4.x

    8. **错误处理**:驱动通过异常机制进行错误报告,当发生错误时会抛出`mongocxx::exception`。开发者应适当地捕获和处理这些异常,确保程序的健壮性。 9. **安全与认证**:MongoDB C++ Driver支持多种安全性特性,...

    mongodb jar包

    例如,它改进了性能,提供了更强大的错误处理机制,支持新的API功能,如 bulk operations(批量操作)和streaming operations(流式操作),同时保持向后兼容性。 Spring Data MongoDB是Spring框架的一个模块,用于...

    ASP.NET WebApi_Mongodb_demo

    在这个"ASP.NET WebApi_Mongodb_demo"项目中,我们将深入探讨如何利用这两个技术来创建一个功能完备的Web应用。 ASP.NET WebAPI是一个用于构建HTTP服务的框架,它允许开发者使用.NET Framework和C#来构建服务,这些...

    一个基于Node和原生MongoDB的微博系统

    例如,可以使用中间件进行身份验证、错误处理或者设置全局变量。 3. **数据模型(Mongoose)**:在Node.js中操作MongoDB,通常会使用Mongoose库。它为MongoDB提供了强大的对象数据模型(ODM),简化了数据操作,同时...

    实验五 MongoDB分片部署与启动

    2. **启动mongos服务**:在两台服务器(nosql01和nosql02)的MongoDB的`bin`目录下启动mongos服务。 ##### 启动分片功能 1. **启动分片功能**:在服务器nosql01中登录mongos的MongoDB客户端,切换到数据库`gateway...

Global site tag (gtag.js) - Google Analytics