检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
查询命令 需要通过分析执行过程(查询计划)进行检查并优化,以避免慢查询。 db.collection.find().explain() 请参见性能相关,更多详细内容请参见官方文档。 注意事项 查询的结果,返回的是一个Currsor。Cursor使用完毕后要及时关闭,否则会产生内存堆积。
注意事项 避免误删除。删除命令不能撤回,所以在删除前先执行db命令查看下当前所在的库。 一旦误删除后,恢复时注意以下几点: 根据历史备份文件,进行备份和恢复。 如果有备份实例,从备份实例中,通过导入和导出恢复。误删除后,恢复过程如果有新的数据写入,需要业务端考虑数据的一致性问题,即是否应该执行恢复。
则避免使用upsert命令,建议直接使用update或insert。 update也需要匹配索引。 避免COLLSCAN全表扫描。 查询条件和索引字段匹配有顺序性。 insert/update命令中涉及的文档,最大不能超过16MB。 父主题: 基础命令规范
基础命令规范 查询命令 写入/更新命令 删除命令 父主题: 数据库使用规范
支持与限制的命令 用户在连接到社区版文档数据库后,需要关注以下支持以及限制的命令。 更多信息,请参见MongoDB官方文档。 如下表所示,“√”表示当前版本支持该命令,“×”表示当前版本不支持该命令。 表1 支持与限制的命令 命令类别 命令名称 3.4 4.0 4.2 备注 Aggregates
系统自带三个数据库:admin、local、test。如果不创建新的数据库,直接插入数据,则数据默认插入到test库中。 图3 查看数据库 查看数据库中的数据。 图4 查看数据 父主题: 数据库使用
漫游快照的数据。这个特性的用途有: 对历史数据做报表,省去了用户自己按时间分库分表的麻烦; 在不影响业务读写的情况下,对数据做Point in Time的备份。 该特性使用户可以在一个数据库实例,甚至同一个表空间上,管理多个历史时态的数据。 使用须知 当前只有最新版本的4.2、4
如何使用MapReduce命令 命令含义 对大数据集执行map-reduce操作。 如何启用MapReduce命令 MapReduce命令由DDS参数模板参数“security.javascriptEnabled”控制,默认值为“false”,表示mapreduce和group命令将无法使用。
命名、修改这些账户的密码和权限,会导致出错。 对于数据库管理员账户rwuser,以及您所创建的账户,允许修改账户的密码。 默认账户rwuser以及通过rwuser创建的账户,对系统库admin和config权限受限,无法进行正常操作。对自身创建的库表,具有充分的操作权限。 Mon
真正创建。 查看数据库。 查看所有数据库,可以使用如下命令。 show dbs 回显信息如下。 admin 0.000GB config 0.000GB info 0.000GB local 0.083GB 删除数据库。可以使用如下命令删除上面创建的info数据库:
该命令为非SSL方式下连接实例的命令,若实例已开通SSL连接,执行此命令会报错。 排查思路 在DDS控制台,单击实例名称,在实例基本信息页面检查是否开通了SSL连接。 若开启了SSL连接,需要使用SSL的方式及命令连接实例。 若未开启SSL连接,需要使用非SSL的方式及命令连接实例。 处理方法 方
DDS支持利用索引实现高效查询。如果没有索引,DDS必须执行集合扫描,即扫描集合中的每个文档,以选择那些与查询语句匹配的文档。如果一个查询存在适当的索引,DDS可以使用该索引来限制它必须检查的文档数量。 创建索引的规范及建议请参见索引设计规范。 写入/更新和删除命令的规范请参见写入/更新命令和删除命令。
登录管理控制台。 单击管理控制台左上方的,选择区域和项目。 在页面左上角单击,选择“数据库 > 文档数据库服务 DDS”,进入文档数据库服务信息页面。 在“实例管理”页面,选择指定的实例,单击实例名称。 进入实例“基本信息”页面,在“网络信息”区域的“数据库端口”处单击,修改数据库端口。
删除集合。 db.coll.drop() 创建固定集合 固定集合是指那些集合的大小或者文档数有最大值,方式集合的大小超过特定值,当集合的大小或者数量超过最大值后,集合的最早存储的值会被自动删除掉。 如下命令创建了一个集合,最大值是5MB,文档数量最多为5000。 db.createCollection("log"
图1 查看DDS实例网络信息 登录弹性云服务器控制台,单击云服务器名称,在基本信息页面,查看当前ECS所在的区域、VPC、安全组和子网信息。 图2 查看ECS网络信息 检查实例的端口是否正确,并通过curl命令检查端口是否可用。 单击实例名称,在基本信息页面查看当前实例的端口信息。
可能原因 使用的客户端和服务端的版本不一致。 输入的命令格式不正确。 排查思路 检查使用的客户端和服务端的版本是否一致。 检查输入的命令格式是否有错误。 处理方法 使用的客户端和服务端的版本保持一致。 使用的URL命令中明确指定了replicaSet(DDS中replicaSet的名称,固定为replica)。
实例创建时指定的root账号拥有什么权限? 当实例创建完成后,DDS会为用户在admin数据库中创建了一个root账号,该账号拥有MongoDB内置的root权限。MongoDB内置的角色定义请参见内置角色。 您可以登录到实例后,通过如下命令查看对应账号的权限信息。 show users
PHP示例 本章节主要介绍使用PHP语言连接集群实例的方法。 前提条件 连接数据库的弹性云服务器必须和DDS实例之间网络互通,可以使用curl命令连接DDS实例服务端的IP和端口号,测试网络连通性。 curl ip:port 返回“It looks like you are trying
PHP示例 本章节主要介绍使用PHP语言连接副本集实例的方法。 前提条件 连接数据库的弹性云服务器必须和DDS实例之间网络互通,可以使用curl命令连接DDS实例服务端的IP和端口号,测试网络连通性。 curl ip:port 返回“It looks like you are trying
PHP示例 本章节主要介绍使用PHP语言连接集群实例的方法。 前提条件 连接数据库的弹性云服务器必须和DDS实例之间网络互通,可以使用curl命令连接DDS实例服务端的IP和端口号,测试网络连通性。 curl ip:port 返回“It looks like you are trying