-
pg_collation_actual_version (oid) 描述:返回当前安装在操作系统中的该排序规则对象的实际版本,目前仅对case_insensitive有效。 返回值类型:text 示例: 1
2
3
4
5
6
7
8
9
10
11 SELECT oid FROM pg_collation WHERE collname ='case_insensitive';
oid
------
3300
(1 row)
SELECT pg_collation_actual_version(3300);
pg_collation_actual_version
-----------------------------
153.14
(1 row)
-
了解FabricSQL数据库对象 Fabric SQL是云原生数据库引擎,能让您借助LakeFormation(
数据湖 统一元数据管理引擎)和OBS(
对象存储服务 )的能力进行高效数据管理。 在Fabric SQL中,数据对象的创建、管理、销毁都与LakeFormation关联,LakeFormation为OBS中的数据提供了持久化的元数据存储。您可以使用Fabric SQL,快速,方便地操作LakeFormation的元数据。 了解更多LakeFormation,请参见LakeFormation用户手册。 Fabric SQL中数据库对象和LakeFormation数据对象具有一定的映射关系,如下所示: 表1 Fabric SQL与LakeFormation数据对象映射关系 FabricSQL数据库对象 LakeFormation数据库对象 说明 Database Catalog Fabric SQL中,用户登录Database后,会自动连接到LakeFormation指定Catalog,用户不可以跨Catalog进行元数据访问。 Schema Database Fabric SQL中的Schema对应了LakeFormation的Database。 Table Table Fabric SQL和LakeFormation的表级映射关系是一致的。
IAM User IAM User Fabric SQL仅支持IAM用户访问,暂不支持其他类型用户访问。 Fabric SQL的Database对象无法创建、修改或删除。用户登录Fabric SQL后,自动连接到LakeFormation指定Catalog上,用户可以通过SQL语法便捷、快速地操作LakeFormation元数据和OBS数据。 FabricSQL当前仅支持IAM用户访问。 父主题: 设计数据库对象
-
迁移准备 权限准备: 当使用 DRS 将E
CS 自建MongoDB数据库的数据迁移到本云DDS实例时,在不同迁移类型情况下,对源数据库和目标数据库的账号权限要求如表3: 表3 迁移账号权限 迁移类型 全量迁移 全量+增量迁移 源数据库 副本集:连接源数据库的用户需要对待迁移库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限。 集群:连接源数据库的用户需要对待迁移库有read权限,对config数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 副本集:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 单节点:连接源数据库的用户需要对待迁移库有read权限,对local数据库有read权限。 集群:连接源数据库mongos节点的用户需要对待迁移库有read权限,对config数据库有read权限, 连接源数据库分片节点的用户需要对admin数据库有readAnyDatabase权限,对local数据库有read权限。 如果需要迁移源数据库用户和角色信息,连接源数据库的用户需要对admin数据库的系统表system.users,system.roles有读权限。 目标数据库 连接目标数据库的用户需要对admin数据库有dbAdminAnyDatabase权限,对目标数据库有readWrite权限。对于目标数据库是集群的实例,迁移账号还要有对config数据的读权限 源数据库权限设置: 需要确保源数据库MongoDB的账号权限具备表3的要求。若权限不足,需要在源数据库端开通高权限的账号。 目标数据库权限设置: 本云DDS实例使用初始账号即可。 网络准备: 源数据库所在的region需要和目标DDS所在的region保持一致。 源数据库可以与目标DDS实例在同一个VPC,也可以不在同一个VPC。 当不在同一个VPC的时候,要求源数据库实例和目标端DDS实例所处的子网处于不同网段,此时需要通过建立对等连接实现网络互通。 具体操作请参见《虚拟私有云用户指南》中“VPC对等连接”章节。 当在同一VPC的时候,网络默认是互通的。 安全规则准备: 同一VPC场景下,默认网络是连通的,不需要单独设置安全组。 不同VPC场景下,通过建立对等连接就可以实现网络互通,不需要单独设置安全组。 其他事项准备: 由于迁移过程不会迁移MongoDB数据库的相关参数,需要自行将上述信息导出后,手动添加到目标DDS中。
-
资源规划 表1 资源规划 类别 子类 规划 备注 VPC VPC名称 vpc-dds 自定义,易理解可识别。 所属Region 华南-广州 选择和自己业务区最近的Region,减少网络时延。 可用区 可用区一 - 子网网段 10.0.0.0/24 子网选择时建议预留足够的网络资源。 子网名称 subnet-default 自定义,易理解可识别。 ECS ECS名称 ecs-mongodb 自定义,易理解可识别。 规格 s6.xlarge.2 4vCPUs|8GiB 本示例中选择的规格。 实际选择的规格需要结合业务场景选择,请参考弹性云服务器的实例规格。 操作系统 CentOS 7.6 64 - 系统盘 通用型SSD 40GiB - 数据盘 超高IO 100GiB - 弹性IP 现在购买 因为迁移任务会选择“公网网络”,因此此处需要购买弹性IP。 DDS DDS 实例名 dds-test 自定义,易理解可识别。 数据库引擎 DDS - 兼容的数据库版本 4.4 - 可用区类型 单可用区 - 可用区 可用区一 - 性能规格 增强Ⅱ型 - CPU架构 X86 8 vCPUs | 32GB - DRS迁移任务 迁移任务名 DRS-dds 自定义。 源数据库引擎 MongoDB 本示例中源数据库为自建MongoDB,即在华为云弹性云服务器上安装社区版MongoDB。 目标数据库引擎 DDS 本示例中目标数据库为华为云DDS实例。 网络类型 公用网络 本示例中采用公用网络。
-
迁移须知(重要) 在创建迁移任务之前,请您务必仔细阅读迁移须知。 支持的源和目标数据库 表2 支持的数据库 源数据库 目标数据库 本地自建Mongo数据库(3.2、3.4、3.6、4.0、4.2、4.4、5.0版本) ECS自建Mongo数据库(3.2、3.4、3.6、4.0、4.2、4.4、5.0版本) 其他云上Mongo数据库(3.2、3.4、3.6、4.0、4.2、4.4、5.0版本 DDS实例(3.2、3.4、4.0、4.2、4.4、5.0版本) 说明: 源数据库为DDS 3.2版本集群实例时,仅支持单全量迁移,不支持增量迁移。 DDS 5.0版本当前仅支持副本集,不支持集群。 如果源库选择DDS实例,则此链路的数据库引擎是“DDS”,否则,此链路的数据库引擎是“MongoDB(数据库种类)。 DDS实例(3.4、4.0、4.2、4.4、5.0版本) 说明: 仅支持目标库版本等于或高于源库版本。 DDS 5.0版本当前仅支持副本集,不支持集群。 可通过以下命令,查询源数据库版本是否符合要求的内容: db.version() 若迁移模式选择“全量+增量”迁移,源数据库Oplog日志必须打开,该日志会占用一定的磁盘空间,需要保证源端磁盘有一定冗余,Oplog日志保留周期最少3天,可以根据迁移数据量实际设置。 其他详情请参考《
数据复制服务 实时迁移》中具体链路的“使用须知”。
-
操作场景 数据复制服务(Data Replication Service,简称DRS)支持将ECS自建数据库的数据迁移到本云文档数据库服务(Document Database Service,以下简称DDS)实例。通过DRS提供的实时迁移任务,实现在数据库迁移过程中业务和数据库不停机,业务中断时间最小化。 本章节主要介绍了通过DRS将ECS自建数据库实时迁移至本云DDS的任务配置流程。支持以下网络场景: 源数据库和目标数据库属于同一个VPC网络内 源数据库和目标数据库属于不同VPC网络内
-
数据库引擎和版本 RDS for PostgreSQL目前支持的数据库引擎和版本如表1所示。 表1 数据库引擎和版本 数据库引擎 单机实例 主备实例 PostgreSQL 17(如需购买17版本的实例,请提交工单申请。) 16 15 14 13 12 11(不支持购买,仅存量经营) 10(不支持购买,仅存量经营) 9.6(不支持购买,仅存量经营) 9.5(不支持购买,仅存量经营) 17(如需购买17版本的实例,请提交工单申请。) 16 15 14 13 12 11(不支持购买,仅存量经营) 10(不支持购买,仅存量经营) 9.6(不支持购买,仅存量经营) 父主题: 实例说明
-
响应消息 正常响应要素说明 表2 要素说明 名称 参数类型 说明 restore_time Array of objects 可恢复时间段列表。 详情请参见表3。 表3 restore_time字段数据结构说明 名称 参数类型 说明 start_time Integer 可恢复时间段的起始时间点,UNIX时间戳格式,单位是毫秒,时区是UTC。 end_time Integer 可恢复时间段的结束时间点,UNIX时间戳格式,单位是毫秒,时区是UTC。 正常响应样例 {
"restore_time": [
{
"start_time": 1532001446987,
"end_time": 1532742139000
}
]
} 异常响应 请参见异常请求结果。
-
请求消息 请求参数 无。 URI样例 查询实例的所有可恢复时间段 GET https://{endpoint}/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/restore-time 根据指定日期查询实例的可恢复时间段 GET https://{endpoint}/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/restore-time?date=2020-12-26
-
URI URI格式 GET /v3/{project_id}/instances/{instance_id}/restore-time?date=2020-12-26 参数说明 表1 参数说明 名称 是否必选 说明 project_id 是 租户在某一Region下的项目ID。 获取方法请参见获取项目ID。 instance_id 是 实例ID。 date 否 所需查询的日期,为yyyy-mm-dd字符串格式,时区为UTC。
-
API概览 通过使用RDS接口,您可以使用RDS的所有功能,包括创建实例、备份恢复、获取日志信息等。 类型 子类型 说明 RDS 接口 v3.1 API v3.1(推荐) 包括应用参数模板、修改指定实例的参数、恢复到已有实例等接口。 RDS 接口 v3 查询API版本 包括查询API版本列表和查询API版本信息接口。 RDS 接口 v3 查询数据库引擎的版本 获取指定数据库引擎对应的数据库版本信息。 RDS 接口 v3 查询数据库规格 获取指定数据库引擎版本对应的规格信息。 RDS 接口 v3 查询数据库磁盘类型 获取指定数据库引擎版本对应的磁盘类型。 RDS 接口 v3 获取磁盘空间使用量 获取单个实例的磁盘空间使用量。 RDS 接口 v3 实例管理 包括创建实例、调整实例容量、调整实例规格、重启实例、删除实例、获取实例列表、获取指定实例详细信息等接口。 RDS 接口 v3 灾备实例(PostgreSQL) 包括配置主实例容灾能力、配置灾备实例容灾能力、灾备实例升主等接口。 RDS 接口 v3 数据库安全性 包括设置SSL
数据加密 、修改数据库端口、修改安全组、修改内网地址等接口。 RDS 接口 v3 备份与恢复 包括设置自动备份策略、获取自动备份策略、创建手动备份、删除手动备份等接口。 RDS 接口 v3 大版本升级 包括查询实例可升级的目标版本、大版本升级检查、查询大版本检查状态或升级状态等接口。 RDS 接口 v3 获取日志信息 包括查询数据库错误日志和查询数据库慢日志接口。 RDS 接口 v3 实例诊断 包括获取诊断后的实例数和获取指定诊断项的诊断结果接口。 RDS 接口 v3 SQL限流(PostgreSQL) 包括新增SQL限流、删除SQL限流、修改SQL限流等接口。 RDS 接口 v3 数据库代理(MySQL) 包括开启数据库代理、关闭数据库代理、查询数据库代理信息等接口。 RDS 接口 v3 管理数据库和用户(MySQL) 包括创建数据库、查询数据库、创建用户、查询用户、删除数据库用户、授权数据库账号和解除账号权限等接口。 RDS 接口 v3 管理数据库和用户(PostgreSQL) 包括创建数据库、查询数据库、创建用户、查询用户等接口。 RDS 接口 v3 管理数据库和用户(SQL Server) 包括创建数据库、查询数据库、创建用户、查询用户、删除数据库用户、授权数据库账号和解除账号权限等接口。 RDS 接口 v3 参数管理 包括获取参数列表、获取配置参数信息、获取实例默认参数、设置配置参数、恢复默认参数、获取参数模板列表、获取参数模板等接口。 RDS 接口 v3 插件管理(PostgreSQL) 包括创建插件、查询插件、更新插件等接口。 RDS 接口 v3 配置只读延迟库(PostgreSQL) 包括获取wal日志延迟回放状态、中止/恢复wal日志回放接口。 RDS 接口 v3 回收站 包括设置回收站策略、查询回收站策略、查询回收站实例信息接口。 RDS 接口 v3 标签管理 包括批量添加标签、批量删除标签、查询项目标签等接口。 RDS 接口 v3 配额管理 包括查询配额接口。 RDS 接口 v3 获取任务信息 获取云数据库 RDS任务中心指定任务的信息。
-
URI URI格式 POST /v3/{project_id}/instances/{instance_id}/database/owner 参数说明 表1 参数说明 名称 是否必选 说明 project_id 是 参数解释: 租户在某一Region下的项目ID。 获取方法请参见获取项目ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 instance_id 是 参数解释: 实例ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。
-
请求消息 表2 参数说明 名称 是否必选 参数类型 说明 db_name 是 String 数据库名称。 users 是 Array of objects 每个元素是与数据库相关联的账号。单次请求最多支持50个元素。 每个元素结构请参见表3。 表3 users列表元素数据结构说明 名称 是否必选 参数类型 说明 name 是 String 数据库账号名称。 数据库账号名称在1到32个字符之间,由字母、数字、中划线或下划线组成,不能包含其他特殊字符。 若数据库版本为RDS for MySQL 5.6,账号长度为1~16个字符。 若数据库版本为RDS for MySQL 5.7和8.0,账号长度为1~32个字符。
-
请求示例 DELETE https://{endpoint}/v3/0483b6b16e954cb88930a360d2c4e663/instances/dsfae23fsfdsae3435in01/db_privilege
{
"db_name": "rds-test",
"users": [
{
"name": "rds"
},
{
"name": "rds001"
}
]
}
-
接口约束 实例在创建、变更规格、修改端口、异常或冻结状态下不能执行该操作。 除RDS界面和API以外的其他方式创建的数据库和账号,如果创建的数据库名和账号名不满足数据库命名规则(参见表2)和账号命名规则(参见表2),例如包含中文或不支持的特殊字符,那么该数据库和账号不支持RDS界面或API的数据库管理和账号管理功能。 如果源库的数据库名和账号名不满足数据库命名规则(参见表2)和账号命名规则(参见表2),迁移到目标库RDS for MySQL后,该数据库和账号也不支持RDS界面或API的数据库管理和账号管理功能。