当写入数据库,MongoDB默认的情况下不会响应结果。但是MongoDB提供了命令来保证这些操作是成功的。
当在safe的模式下保存和更新数据库,一些驱动就会自动调用这些命令。我们这详细讲解getlasterror是如何运行的。
getlasterror
getlasterror是验证最后一次连接数据库操作。可以通过以下几种方式来进行调用:
> db.$cmd.findOne({getlasterror:1})
或者
> db.runCommand("getlasterror")
或者用shell辅助方法
更多的命令查看 command documentation.
驱动
各个驱动都支持 getlasterror 以及许多还提供了"safe"模式的操作。如果你使用Python,你可以使用如下语句来自动调用getlasterror。
collection.save({"name": "MongoDB"}, safe=True)
如果保存失败,异常就会抛出。关于"safe"模式,详情请看各个驱动的文档。
案例
getlasterror 主要用于写操作 (虽然也可以用于其他命令或查询语句. 默认情况下,写操作不会有任何返回:在写的过程中,这样可以避免客户端等待与服务器互相通讯。
如果要返回代码,可以调用getLastError。
如果用多个连接写入数据到MongoDB中,调用getLastError就很重要了,要确保每个连接都把数据成功写入到数据库中。
如果你想通过连接#1写入数据并且从连接#2返回这些写入的数据,你可以在写入连接#1之后,通过调用getLastError来实现。
注意: mongo wire protocol killCursors 操作不支持 getlasterror. (如果你是 驱动 developers一定要注意 .)
参数
fsync
当启动mongod,并没有附加参数--dur的时候, fsync 参数再返回之前会强迫数据库进行同步所有文件。
当启动mongod,附加--dur的时候,fsync参数返回之前会等待下一组的提交。
> db.runCommand({getlasterror:1,fsync:true})
{ "err" : null, "n" : 0, "fsyncFiles" : 2, "ok" : 1 }
w
写操作成功复制N个服务器之前,写操作都是阻塞状态。
wtimeout 和w一起使用,指定超时时间。
> db.getLastError(2, 5000) // w=2, timeout 5000ms
相关推荐
通常,它会包含启动MongoDB服务的命令,例如使用`mongod.exe`并指定配置文件路径。 2. **启动MongoDB服务**: - `NET START MongoDB.bat`:这是一个Windows批处理命令,用于启动名为MongoDB的服务。`NET START`...
MongoDB 数据库常用命令大全 MongoDB 是 NoSQL 数据库系统中比较流行的数据库之一。它也是最接近关系型数据库的,一个数据库可以包含多个集合(Collection),类似于关系数据库中的表;而每个集合中可以存储一组由...
以下是从给定的标题、描述和标签中提取的MongoDB基本命令和实例的详细说明: 1. **显示数据库**: `show dbs` 命令用来列出当前MongoDB服务器上已存在的所有数据库,以及它们占用的空间大小。 2. **切换数据库**...
mongodb基本操作数据库命令
MongoDB的`runCommand`命令是数据库操作中的一个重要工具,它允许用户执行一系列高级操作,这些操作不能通过标准的查询语法完成。`runCommand`接收一个文档作为参数,该文档包含要执行的具体命令和可能的选项,然后...
根据提供的文件信息,“MongoDB命令查询.txt”,我们可以深入探讨与MongoDB相关的命令查询知识点,特别是聚焦于`db.tablename.findOne({})`这条命令的具体用法及其背后的原理。 ### MongoDB简介 MongoDB是一款开源...
5. **MongoDB命令帮助**:如果你想知道MongoDB支持哪些命令,可以使用`help`。它会显示一系列基本的数据库和集合操作命令。更具体的,你可以输入`db.help()`来查看当前数据库支持的方法,或者`db.<collection>.help...
MongoDB常用操作命令大全 数据库常用命令 Collection聚集集合 用户相关 聚集集合查询
在centos7下安装部署mongodb分片+副本集群常用命令整理,内容包含,安装、配置、启动、访问shell终端等命令
以下是一些MongoDB的常用命令及其详细解释: 1. **停止数据库**: - 使用`control-c`:在终端中按下`control-c`可以中断当前运行的MongoDB进程。 - `use admin`:切换到`admin`数据库,这是一个特殊的角色,可以...
MongoDB 安装和实用命令 MongoDB 是一个基于分布式文件存储的开源数据库系统。它的主要特点是高性能、易扩展、灵活的数据模型等。下面是 MongoDB 的安装和实用命令。 安装 MongoDB 1. 下载 MongoDB 的安装包,...
本文将深入探讨在MongoDB中常见的数据库操作命令,这些命令对于理解和操作MongoDB至关重要。 首先,让我们来看一下如何根据年龄对数据进行排序。在MongoDB中,可以使用`sort()`函数来对查询结果进行排序。例如,...
以下是对MongoDB数据库常用命令的详细介绍: 1. **连接数据库**:使用`mongo`命令启动MongoDB shell,连接到默认的`test`数据库。若要连接到特定数据库,如`mydb`,可执行`use mydb`。 2. **显示所有数据库**:`...
MongoDB 的管理命令是通过其命令行界面(Mongo Shell)执行的。Mongo Shell 提供了一个交互式的 JavaScript 环境,用于连接到 MongoDB 服务器并执行各种管理任务。以下是一些常见的 MongoDB 管理命令: 1. `help`:...
为了有效管理MongoDB数据库,管理员需要掌握一系列的命令来执行日常维护任务。接下来将详细介绍文档中出现的MongoDB常用管理命令及其相关的知识点。 1. 启动MongoDB服务 - `mongod` 是MongoDB数据库服务器的命令行...
例如,可以使用以下命令下载 MongoDB 1.6.3 版本: ``` curl -O http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.6.3.tgz ``` 这将下载 MongoDB 1.6.3 版本的安装包。 第三步:解压缩文件 下载完成后,...
计算机后端-PHP视频教程. mongodb04 入门命令.wmv
包含对数据库、集合、文档的常用操作。