检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Println("插入单条记录失败:",err) return }else { fmt.Println(res) } 父主题: 基于Golang开发
更多教程 更多开发教程请参见官方文档。 父主题: 应用程序开发教程
不要使用socketTimeoutMS来阻止某个操作在数据库端的运行时长。需要使用maxTimeMS,以便服务器可以取消已经被客户端遗弃的操作。 父主题: 应用程序开发教程
系统集合 表1 4.0版本系统集合 系统集合 说明 admin.system.roles 存储创建并分配给用户的自定义角色,以提供对特定资源的访问权限。 admin.system.users 存储用户的身份验证凭据以及分配给该用户的所有角色。 admin.system.version
常用操作 常用CRUD操作
数据库使用规范 基础命令规范 开发规范 设计规范
数据库使用 连接数据库 创建和管理数据库 创建和管理集合 创建和管理索引
管理数据库权限 默认权限机制 角色管理 用户管理
常用CRUD操作 选择对应的数据库版本后,您可以了解MongoDB常用的CRUD操作。详情请参见官方文档。 父主题: 常用操作
角色管理 DDS通过基于角色的管理来控制用户对数据访问的权限,角色共分为两类:预置角色和自定义角色。 预置角色 自定义角色 创建并管理角色 父主题: 管理数据库权限
ReadOnlyAccess”,单击“下一步”。 图4 授权 选择授权方案后,单击“确定”完成用户组授权。 所有资源。 指定区域项目资源。授权后,用户根据权限使用已选区域项目中的资源。 图5 设置权限范围 步骤2:创建IAM用户 IAM用户与企业中的实际员工或是应用程序相对应,有唯一的安全凭
用户管理 DDS上用户的权限都是基于角色管理,通过给用户赋予不同的角色来进行差异化的权限控制。 为了给文档数据库实例提供管理服务,您在创建数据库实例时,文档数据库服务会自动为实例创建admin、monitor和backup账户。如果试图删掉、重命名、修改这些账户的密码和权限,会导致出错。
创建和管理集合 写入/更新和删除命令的规范请参见写入/更新命令和删除命令。 创建集合 执行db.createCollection(name, options)创建集合。 db.createCollection(<name>, { capped: <boolean>,
创建和管理索引 DDS支持利用索引实现高效查询。如果没有索引,DDS必须执行集合扫描,即扫描集合中的每个文档,以选择那些与查询语句匹配的文档。如果一个查询存在适当的索引,DDS可以使用该索引来限制它必须检查的文档数量。 创建索引的规范及建议请参见索引设计规范。 写入/更新和删除命
基础命令规范 查询命令 写入/更新命令 删除命令 父主题: 数据库使用规范
创建用户 操作须知 下面所有操作都对权限要求,默认rwuser用户具备所需权限,如果通过客户自定义用户进行管理,则需要关注是否具备操作权限。 使用具备权限的用户(可使用rwuser)连接到数据库实例。 通过createUser创建所需的用户,通过设置合适的角色来控制对应用户的权限
删除用户 db.dropUser(username, writeConcern) username为要从数据库中删除的用户名。 writeConcern为可选参数, 移除操作的writeConcern级别。 示例 下面是操作将reportUser1用户从产品数据库中删除。 use
默认权限机制 DDS与社区原生的版本相比,对安全进行一系列的增强,以应对越来越严峻的安全挑战。社区原生版本支持不鉴权的方式连接使用数据库的,而DDS采取默认安全策略,连接数据库必须通过鉴权,否则,无法使用数据库。 数据库实例创建后,系统会创建默认的管理员用户rwuser,但是需要需要客户指定,并满足密码复杂度要求。
设计规范 命名规范 数据库对象(库名、表名、字段名、索引名)命名建议全部使用小写字母开头,后面跟字母或者数字,数据库对象(库名、表名、字段名、索引名)名字长度建议都不要大于32字节。 数据库名称不能使用特殊字符("",.,$,\,/,*,?,~,#,:,|")和空字符\0,数据库
预置角色 预置角色是系统自动生成的角色信息,客户端可用的预置角色名称有read,readWrite。 mongodb使用角色来管理数据库的,所以创建一个用户时就需要赋予一个角色。角色除了内置之外,也可以自定义角色。 表1 常见内置角色 角色 权限描述 包含的操作命令 read r