华为云用户手册

  • 支持的版本说明 PostgreSQL 12、PostgreSQL 13、PostgreSQL 14最新的小版本支持该插件。可通过以下SQL语句查询当前实例是否支持该插件: SELECTSELECT * FROMFROM pg_available_extension_versions WHEREWHERE name = 'pgl_ddl_deploy''pgl_ddl_deploy'; 如果不支持,可通过升级内核小版本或者使用转储与还原升级大版本使用该插件。 RDS PostgreSQL实例支持的插件,具体请参见支持的插件列表。
  • 插件介绍 RDS PostgreSQL支持pgl_ddl_deploy插件,用于自动同步DDL语句,在很多环境中,能够涵盖大部分在应用环境中执行的DDL语句。 任何DDL语句都可以同步给订阅者。 表可以在创建时自动添加到复制中。 支持按正则表达式、按一组特定的表进行过滤。 可以选择以锁定安全的方式部署在订阅者上。 可以选择使订阅者上的某些事件失败,以便稍后重试。 可以在某些边缘情况下,围绕为DBA提供的日志记录构建警报,然后处理可能的手动部署。 ALTER TABLE语句可以通过子命令标签进行过滤。 可选支持自动终止订阅者系统上组织DDL执行的阻塞进程。
  • 约束限制 只有root用户才能使用pg_repack。 目标表必须存在主键,或在非空列上存在唯一索引。 至少需要两倍于目标表(及索引)的磁盘空间。 无法在temp表和存在gist索引的表上操作。 在pg_repack运行期间,目标表上不能执行除vacuum和analyze之外的任何DDL指令。 需要在本地部署客户端才能使用pg_repack,详见官方文档: https://reorg.github.io/pg_repack/。
  • 常见问题 表1 常见报错信息及解决方案 详细报错信息 解决方案 ERROR: pg_repack failed with error: ERROR: permission denied for schema repack 需要使用root用户执行才能执行pg_repack。 ERROR: pg_repack failed with error: You must be a superuser to use pg_repack 执行pg_repack时加上--no-superuser-check,跳过超级用户检查。 NOTICE: Waiting for 1 transactions to finish. First PID: xxxx 清理过程中有长事务,pg_repack会等待事务执行完成。
  • 基本使用 使用pglogical插件的功能,需要修改配置参数。 wal_level = 'logical' shared_preload_libraries = 'pglogical' shared_preload_libraries参数的修改可以参考修改shared_preload_libraries参数。 配置逻辑流复制。在发布端创建发布节点: SELECT pglogical.create_node( node_name := 'provider', dsn := 'host=127.0.0.1 port=5432 dbname=test user=provider_user'); 配置复制集。将public中的所有表添加到default复制集: SELECT pglogical.replication_set_add_all_tables('default', ARRAY['public']); 复制集用来控制将发布节点数据库中的哪些表以及这些表上的哪些操作发布给订阅者。 default复制集,表示发布所有表及这些表的所有操作。 更多复制集定义请参见pglogical官方文档。 在订阅端创建订阅节点。 一旦设置了发布端节点,订阅者就可以订阅它。首先必须创建订阅者节点: SELECT pglogical.create_node( node_name := 'subscriber', dsn := 'host=127.0.0.1 port=5432 dbname=test user=subscriber_user'); 在订阅端创建订阅。在订阅者节点创建订阅后,将在后台启动同步和复制过程: SELECT pglogical.create_subscription( subscription_name := 'subscription', provider_dsn := 'host=providerhost port=5432 dbname=test user=provider_user');SELECT pglogical.wait_for_subscription_sync_complete('subscription');
  • 进阶使用 在发布端和订阅端分别创建要复制的表。 create table test(id int primary key, name text, reg_time timestamp); 发布端和订阅端的表必须名字、结构一致。 在发布端给表插入数据。 insert into test select generate_series(1,10000),'test',now(); 在发布端将表加入复制集。 -- 将所有的表加入到复制集SELECT pglogical.replication_set_add_all_tables('default', ARRAY['public']);-- 将指定的表加入到复制集SELECT pglogical.replication_set_add_table( set_name := 'default', relation := 'test',synchronize_data := true); 如果执行sql将所有的表加入到复制集,那么在订阅端还需要执行以下步骤将数据同步,否则数据无法到达订阅端,订阅状态是unknown。 select pglogical.alter_subscription_synchronize('subscription1'); 如果执行sql将指定的表加入到复制集,则默认会自动同步。 验证该表已经被加入到复制集。 select * from pglogical.replication_set_table ; 订阅端查询订阅状态。 select * from pglogical.show_subscription_table('subscription1','test'); 订阅端查看表数据是否同步。 select count(*) from test;
  • 支持的版本说明 RDS PostgreSQL 12、13、14最新的小版本支持该插件。 可通过以下SQL语句查询当前实例支持该插件的版本: SELECT * FROM pg_available_extension_versions WHERE name = 'pglogical'; 如果不支持,可通过升级内核小版本或者使用转储与还原升级大版本使用该插件。 RDS PostgreSQL实例支持的插件,具体请参见支持的插件列表。
  • 插件介绍 pglogical支持的使用场景: 主版本数据库之间的升级(存在上述的版本限制)。 完整的数据库复制。 利用复制集,选择性的筛选的关系表。 可从多个上游服务器,做数据的聚集和合并。 pglogical要求: pglogical 扩展必须同时安装在发布端和订阅端上。 发布端和订阅端上的表必须具有相同的名称并且位于相同的模式中。 发布端和订阅端的表必须具有相同的列,每列中的数据类型必须相同。 表必须具有相同的主键。不建议添加除 PRIMARY KEY 之外的其他 UNIQUE 约束。 要复制多个数据库,您必须为每个数据库设置单独的发布端/订阅端关系。无法同时为 PostgreSQL 安装中的所有数据库配置复制。
  • 系统权重分配规则 系统自动设置实例的读权重时,权重值是固定的,如下表所示: 默认权重值=CPU个数*50。权重值范围为100~1000。 例如: CPU个数为1,1*50=50,则权重值为100。 CPU个数为8,8*50=400,则权重值为400。 CPU个数为32,32*50=1600,则权重值为1000。 表1 RDS for MySQL只读实例权重值列表 vCPU(个) 内存(GB) 权重 1 2 100 1 4 100 1 8 100 2 4 100 2 8 100 2 16 100 4 8 200 4 16 200 4 32 200 8 16 400 8 32 400 8 64 400 16 32 800 16 64 800 16 128 800 32 64 1000 32 128 1000 32 256 1000 60 128 1000 60 256 1000 60 512 1000
  • 场景限制 数据库代理的语法限制和功能限制请参考数据库代理使用规范建议。 服务端Prepared Statements,不支持`COM_STMT_FETCH`命令。 应用无损透明(ALT)功能不支持一些用户设置的系统变量: innodb_ft_user_stopword_table:只支持值为NULL。 transaction_write_set_extraction:只支持值为OFF。 profiling:不支持设置为1或者ON。 应用无损透明(ALT)功能不支持开启透明数据加密(TDE)。 应用无损透明(ALT)功能暂不兼容以下数据库代理能力: 暂不兼容会话级连接池。 暂不兼容单列插入16MB以上的数据。 暂不兼容prepare Cache。 应用无损透明(ALT)功能不支持用户临时表。 应用无损透明(ALT)功能不支持部分无法达到安全事务边界的情况: 不支持长时间不提交的InnoDB事务块。 不支持有未释放的表锁、用户锁,备份锁和binlog锁(Lock for backup/binlog)。 不支持XA事务。 应用无损透明(ALT)功能不支持复制延迟较大的场景: 变更过程中如果出现主备实例由于复制延迟的原因,短时间数据无法达到一致的情况,用户连接可能会遇到MySQL只读错误,或者连接中断。 应用无损透明(ALT)功能短时间内连续变更的场景,可能出现失败率高的情况。
  • 使用限制 如需开通应用无损透明(ALT)的权限,请联系客服人员申请。 实例为主备模式,切换策略为“可靠性优先”,已开启Proxy读写分离且必须通过读写分离地址连接实例。 仅支持RDS for MySQL 5.7版本。 支持的RDS for MySQL内核版本和Proxy内核版本限制如下: RDS for MySQL内核版本大于等于5.7.37.1,如果小于5.7.37.1,可参考升级内核小版本手动升级至最新的RDS for MySQL内核版本。 Proxy内核版本大于等于2.7.5.0,如果小于2.7.5.0,可参考升级数据库代理(Proxy)内核版本手动升级至最新的Proxy内核版本。
  • 应用无损透明(ALT)体验 当ALT功能开启,用户使用Sysbench,Tpcc-MySQL或MySQL客户端等工具连接到读写分离地址时,进行主备切换,用户的连接不会中断,只会出现短时间的卡顿后很快恢复。 以下分别是使用Sysbench,Tpcc-MySQL和MySQL客户端工具进行主备切换的效果示意。 使用Sysbench的进行主备切换的示例 使用tpcc-mysql的进行主备切换的示例 使用MySQL命令行工具主备切换的示例 如下图所示,用户自定义变量、会话变量、数据库在主备切换前后保持一致。 如下图所示,不同的事务排干超时时间,可能会影响到当前会话的ALT能力; 父主题: 应用无损透明(ALT)
  • 模式描述 Strict模式(默认):该模式下,Multi-Statements会发往主节点,当前连接的后续请求读写分离失效,会全部路由到主节点,需断开当前连接并重新连接才能恢复读写分离。该模式不会解析Multi-Statements,性能好,适合短连接、无连接复用场景。 Loose模式:该模式下,Multi-Statements会发往主节点,当前连接的后续请求依旧可以读写分离。该模式不会解析Multi-Statements,性能好,适合Multi-Statements内仅含DML SQL,不含设置session变量、创建临时表、创建存储过程、执行未提交事务等操作的场景。 Parse模式:该模式下,Multi-Statements会发往主节点,同时数据库代理会解析Multi-Statements,根据Multi-Statements内包含的SQL情况(具体见Parse模式场景说明),决定当前连接的后续请求是否恢复读写分离,由于该模式会解析Multi-Statements,对代理性能有一定影响,影响程度与Multi-Statements的长度和复杂性相关,建议Multi-Statements小于100MB,避免数据库代理解析SQL消耗过多的资源,引起性能明显下降。
  • Parse模式场景说明 当Multi-Statements包含如下场景时,后续请求会全部路由到主节点,需断开当前连接并重新连接才能恢复读写分离。 Multi-Statements内创建临时表。 Multi-Statements内创建存储过程。 Multi-Statements内含未提交的事务(如执行了begin,但未commit或rollback)。 Multi-Statements过于复杂或含特殊语法等导致Multi-Statements解析失败。 更改Multi-Statements模式立即生效,无需重启数据库代理。但如果模式切换前存在因为执行了Multi-Statements导致读写分离失效的连接,不会因为切换模式而恢复读写分离,需要断开重连才能恢复。
  • RDS for PostgreSQL内核版本发布记录 RDS for PostgreSQL支持的社区版本的发布日期如下表所示。 表1 RDS for PostgreSQL支持的社区版本 发布日期 支持的社区版本 2022-12 14.6 13.9 12.13 11.18 10.23 2022-07 14.4 13.7 12.11 11.16 10.21 2022-04 13.6 12.10 11.15 10.20 9.6.24 2021-04 13.2 12.6 11.11 10.16 9.5.25 2021-03 9.6.21 2020-03 12.2 2019-12 9.5.19 2019-11 11.5 10.10 9.6.15 2019-08 11.4 9.6.13 9.5.17 2019-07 11.2 10.8 2019-06 9.5.15 2019-03 10.6 9.6.11 2019-01 11.0 2018-11 10.3 2018-03 9.6.5 2018-02 9.6.3 2017-10 9.5.5 父主题: RDS for PostgreSQL内核功能
  • 逻辑订阅完整使用示例 发布端创建表 create table tableName(id int primary key, num int); 发布端创建发布 create publication pubName for table tableName; 发布端创建一个Failover Slot(若为PostgreSQL12或13版本,则去掉第四个参数false) SELECT * FROM pg_create_logical_replication_slot('slotname', 'pgoutput', false, false, true); 发布端插入数据 insert into tableName values(1,1); insert into tableName values(2,2); 订阅端创建表 create table tableName (id int primary key, num int); 订阅端创建订阅,指定创建的Failover Slot名称 create subscription subName connection 'host=192.168.0.10 dbname=postgres user=root port=5432 password=xxxxxxx' publication pubName with(copy_data=true,create_slot=false,slot_name= slotname); 订阅端查询数据,验证数据是否订阅到 select * from tableName; 主备切换 发布端继续插入数据,在订阅端查看,逻辑订阅不会断开。
  • 使用方法 在发布端执行如下SQL,创建一个Failover Slot: 表1 命令及参数说明 版本 命令 参数说明 PostgreSQL12和PostgreSQL13版本 SELECT * FROM pg_create_logical_replication_slot('slotname', 'pgoutput', false, true); slotname表示logical slot的名称。 pgoutput表示plugin的名称,也可以更改为其他支持的插件。 第三个参数(例如false),表示该slot是否为临时slot。 第四个参数(例如true),表示该slot是否为Failover Slot。 PostgreSQL14及以上版本 SELECT * FROM pg_create_logical_replication_slot('slotname', 'pgoutput', false, false, true); slotname表示logical slot的名称。 pgoutput表示plugin的名称,也可以更改为其他支持的插件。 第三个参数(例如false),表示该slot是否为临时slot。 第四个参数(例如true),表示是否启动两阶段提交选项。 第五个参数(例如true),表示该复制槽是否为Failover slot。 因此,如果要创建一个Failover Slot,在第三个参数临时slot字段必须为false,最后一个参数必须为true。如果最后一个参数省略不写,则创建的是非Failover Slot。
  • 使用场景 RDS for PostgreSQL的逻辑订阅故障转移(Failover Slot)功能用来将那些指定为failover slot的逻辑复制槽信息从主实例同步到备实例,当主备切换之后逻辑订阅能够继续进行,实现逻辑复制槽的故障转移。 当用户使用逻辑复制时,由于slot信息不会随着主备切换转移到新的主实例上,一旦实例发生主备切换,逻辑订阅就会断开,此时除非手动重新创建slot,否则逻辑订阅无法重新连接。RDS for PostgreSQL的Failover Slot功能可以将所有的logical slot从主实例同步到备实例,避免主备切换后逻辑订阅断开。
  • 操作系统更新 云数据库 RDS for PostgreSQL实例需要适时进行操作系统更新,以提高数据库性能和数据库的整体安全状况。 实例内核版本升级时,云数据库 RDS for PostgreSQL会根据操作系统的实际情况,决定是否更新以及更新适合的操作系统冷补丁版本。 操作系统更新不会更改数据库实例的版本或数据库实例信息。 此外,云数据库 RDS for PostgreSQL会在用户设置的运维时间段内,通过热补丁方式及时修复影响重大的操作系统漏洞。 父主题: 变更实例
  • 操作场景 对于“包年/包月”模式的数据库实例,您需要退订订单,从而删除数据库实例资源。您可以参考退订单个实例(方法一)和退订单个实例(方法二)退订单个实例订单,也可以批量退订数据库实例订单。关于退订费用,请参见退订规则说明。 退订主实例订单时,会同步删除该主实例及其对应的只读实例。由于只读实例的为单独的订单,因此只读实例的订单不会被同步删除,需要您手动退订,否则系统会继续收取费用。退订只读实例的操作方法同主实例。 对于“按需计费”模式的主实例或只读实例,您需要在关系型数据库的“实例管理”页面对其进行删除,更多操作请参见删除按需实例。
  • 支持审计的关键操作列表 通过云审计服务,您可以记录与华为云云数据库RDS实例相关的操作事件,便于日后的查询、审计和回溯。 表1 云审计服务支持的RDS操作列表 操作名称 资源类型 事件名称 创建实例、创建只读、恢复到新实例 instance createInstance 扩容、规格变更 instance instanceAction 实例重启 instance instanceRestart 恢复到原有实例 instance instanceRestore 实例重命名 instance instanceRename 重置密码 instance resetPassword 设置数据库版本配置参数 instance setDBParameters 重置实例的数据库版本配置参数 instance resetDBParameters 设置备份策略-打开,关闭,修改 instance setBackupPolicy 修改数据库端口号 instance changeInstancePort 绑定解绑EIP instance setOrResetPublicIP 修改安全组 instance modifySecurityGroup 创建标签 instance createTag 删除标签 instance deleteTag 修改标签 instance modifyTag 删除实例 instance deleteInstance 主备倒换 instance instanceFailOver 修改主备同步模式 instance instanceFailOverMode 修改主备倒换策略 instance instanceFailOverStrategy 单机转主备实例 instance modifySingleToHaInstance 创建快照 backup createManualSnapshot 复制快照 backup copySnapshot 下载备份(通过OBS下载) backup downLoadSnapshot 下载备份(通过浏览器下载) backup backupsDownLoad 删除快照 backup deleteManualSnapshot 合并下载binlog backup packBackupsDownLoad 创建参数模板 parameterGroup createParameterGroup 修改参数模板 parameterGroup updateParameterGroup 删除参数模板 parameterGroup deleteParameterGroup 复制参数模板 parameterGroup copyParameterGroup 重置参数模板 parameterGroup resetParameterGroup 应用参数模板 parameterGroup applyParameterGroup 保存参数模板 parameterGroup saveParameterGroup 冻结删除 all rdsUnsubscribeInstance 实例冻结 all rdsfreezeInstance 按需转包周期、续费 all bssUpdateMetadata 父主题: CTS审计
  • 事件监控简介 事件监控提供了事件类型数据上报、查询和告警的功能。方便您将业务中的各类重要事件或对云资源的操作事件收集到云监控服务,并在事件发生时进行告警。 事件即云监控服务保存并监控的RDS资源的关键操作,您可以通过“事件”了解到谁在什么时间对系统哪些资源做了什么操作,如重置数据库管理员密码、修改备份策略等。 事件监控为您提供上报自定义事件的接口,方便您将业务产生的异常事件或重要变更事件采集上报到云监控服务。 事件监控默认开通,您可以在事件监控中查看系统事件和自定义事件的监控详情,目前支持的系统事件请参见事件监控支持的事件说明。 父主题: 事件监控
  • 事件监控支持的事件说明 表1 资源异常事件 事件来源 事件名称 事件ID 事件级别 事件说明 处理建议 事件影响 RDS 创建实例业务失败 createInstanceFailed 重要 创建实例失败产生的事件,一般是磁盘个数,配额大小不足,底层资源耗尽导致。 检查磁盘个数、配额大小,释放资源后重新创建。 无法创建数据库实例。 实例全量备份失败 fullBackupFailed 重要 单次全量备份失败产生的事件,不影响以前成功备份的文件,但会对“恢复到指定时间点”的功能有一些影响,导致“恢复到指定时间点”时增量备份的恢复时间延长。 重新执行一次手工备份。 备份失败。 主备切换异常 activeStandBySwitchFailed 重要 主备切换异常是由于网络、物理机有某种故障导致备机没有接管主机的业务,短时间内会恢复到原主机继续提供服务。 检查应用和数据库之间的连接是否重新建立了连接。 无 复制状态异常 abnormalReplicationStatus 重要 出现”复制状态异常“事件通常有两种情况: 1、主备之间复制时延太大(一般在写入大量数据或执行大事务的时候出现),在业务高峰期容易出现阻塞。 2、主备间的网络中断,导致主备复制异常。 提交工单。 但不会导致原来单实例的读写中断,客户的应用是无感知的。 复制状态异常已恢复 replicationStatusRecovered 重要 即复制时延已回到正常范围内,或者主备之间的网络通信恢复。 不需要处理。 无 实例运行状态异常 faultyDBInstance 重要 由于灾难或者物理机故障导致单机或者主实例故障时会上报本事件,属于关键告警事件。 检查是否有设置自动备份策略,并且提交工单。 可能导致数据库服务不可用。 实例运行状态异常已恢复 DBInstanceRecovered 重要 针对灾难性的故障,RDS有高可用工具会自动进行备机重建,重建完成之后即会上报本事件。 不需要处理。 无 单实例转主备实例失败 singleToHaFailed 重要 创建备机时或备机创建完成后主备机之间配置同步发生故障时会产生此事件,一般是由于备节点所在数据中心资源不足导致。 提交工单。 “单实例转主备实例失败”不会导致原来单实例的读写中断,客户的应用是无感知的。 数据库进程重新启动 DatabaseProcessRestarted 重要 一般是内存不足、负载过高导致数据库进程停止 通过云监控的数据,查看是否有内存飙升、cpu长期过高、磁盘满使用率不足等的情况,可以选择提升CPU内存规格或者优化业务逻辑 进程挂掉的时候,业务中断。RDS服务会自动拉起进程,尝试恢复业务。 实例磁盘满 instanceDiskFull 重要 一般是由于数据空间占用过大导致。 对实例进行扩容操作。 实例由于磁盘空间满将会变成只读实例,数据库不可进行写入操作。 实例磁盘满恢复 instanceDiskFullRecovered 重要 实例磁盘状态恢复正常。 不需要处理。 实例解除只读状态,恢复写操作。 kafka连接失败 kafkaConnectionFailed 重要 一般是由于网络波动或kafka服务端出现异常等原因导致。 检查网络状况和kafka服务端状态。 审计日志无法发送到kafka服务端。 表2 操作类事件 事件来源 事件名称 事件ID 事件级别 事件说明 RDS 重置数据库管理员密码 resetPassword 重要 重置数据库管理员密码 集群扩容等操作 instanceAction 重要 磁盘扩容、规格变更 删除集群下的实例 deleteInstance 次要 删除集群下的实例 修改备份策略 setBackupPolicy 次要 修改备份策略 修改参数组 updateParameterGroup 次要 修改参数组 删除参数组 deleteParameterGroup 次要 删除参数组 重置参数组 resetParameterGroup 次要 重置参数组 修改数据库端口号 changeInstancePort 重要 修改数据库端口号 实例主备切换 PrimaryStandbySwitched 重要 实例主备切换 父主题: 事件监控
  • 连接SQL Server实例的方式 云数据库 RDS for SQL Server提供使用SQL Server Management Studio客户端和数据管理服务(Data Admin Service,简称DAS)的连接方式。 表1 RDS连接方式 连接方式 使用场景 通过DAS连接RDS for SQL Server实例(推荐) 通过数据管理服务(Data Admin Service,简称DAS)这款可视化的专业数据库管理工具,可获得执行SQL、高级数据库管理、智能化运维等功能,做到易用、安全、智能地管理数据库。云数据库RDS服务默认开通DAS连接权限。 通过SQL Server Management Studio客户端连接实例 华为云提供两种连接方式通过SQL Server Management Studio客户端连接实例:非SSL连接和SSL连接。其中,SSL连接实现了数据加密功能,具有更高的安全性。 父主题: 连接实例
  • 操作步骤 获取安装包。 在下载页面找到对应版本链接,以MySQL-client-5.6.31-1.el6.x86_64.rpm为例,即可下载安装包。 图1 下载 将安装包上传到弹性云服务器。 创建弹性云服务器时,要选择操作系统,例如Redhat6.6,并为其绑定EIP(Elastic IP,弹性公网IP)。 使用远程连接工具通过绑定的EIP连接到弹性云服务器,即可将安装包上传到弹性云服务器。 执行以下命令安装MySQL客户端。 sudo rpm -ivh MySQL-client-5.6.31-1.el6.x86_64.rpm 如果安装过程中报conflicts,可增加replacefiles参数重新安装,如下: rpm -ivh --replacefiles MySQL-client-5.6.31-1.el6.x86_64.rpm 如果安装过程中提示需要安装依赖包,可增加nodeps参数重新安装,如下: rpm -ivh --nodeps MySQL-client-5.6.31-1.el6.x86_64.rpm
  • 使用MySQL-Front连接实例 启动MySQL-Front客户端。 在连接管理对话框中,单击“新建”。 图1 连接管理 输入需要连接的云数据库RDS实例信息,然后单击“确定”。如图2所示。 图2 添加信息 表1 参数说明 参数 说明 名称 连接数据库的任务名称。若不填写,系统默认与Host一致。 主机 目标实例的内网地址。查看目标实例的内网地址及端口信息的步骤如下: 登录云数据库RDS的管理控制台。 选择目标实例所在区域。 单击目标实例名称,进入“基本信息”页面。 在“连接信息”模块,可查看“内网地址”信息。 如果通过公网连接,主机IP为目标实例的弹性公网IP。 端口 输入RDS实例的内网端口。 用户 需要访问RDS实例的帐号名称。默认root。 密码 要访问云数据库RDS实例的帐号所对应的密码。 在“连接管理”窗口,选中3创建的连接,单击“打开”,如下图所示。若连接信息无误,即会成功连接实例。 图3 打开登录信息 若连接失败,请参见ECS无法连接到RDS实例的原因。
  • 操作场景 创建云数据库RDS实例时,系统默认开启自动备份策略,安全考虑,实例创建成功后不可关闭,您可根据业务需要设置自动备份策略,云数据库RDS服务按照您设置的自动备份策略对数据库进行备份。设置自动备份策略生成的备份为全量备份,Binlog备份为RDS每5分钟自动生成的增量备份,用户不需要设置。 云数据库RDS服务的备份操作是实例级的,而不是数据库级的。当数据库故障或数据损坏时,可以通过备份恢复数据库,从而保证数据可靠性。备份以压缩包的形式存储在对象存储服务上,以保证用户数据的机密性和持久性。由于开启备份会损耗数据库读写性能,建议您选择业务低峰时间段设置自动备份。 云数据库RDS默认开启的自动备份策略设置如下: 保留天数:默认为7天。 备份时间段:默认为24小时中,间隔一小时的随机的一个时间段 ,例如01:00~02:00,12:00~13:00等。备份时间段以UTC时区保存。如果碰到夏令时/冬令时切换,备份时间段会因时区变化而改变。 备份周期:默认为一周内的每一天。 自动备份的备份文件不支持手动删除,可通过修改自动备份策略调整备份保留天数,超出备份保留天数的已有备份文件会被自动删除。
  • 事件监控支持的事件说明 表1 资源异常事件 事件来源 事件名称 事件ID 事件级别 事件说明 处理建议 事件影响 RDS 创建实例业务失败 createInstanceFailed 重要 创建实例失败产生的事件,一般是磁盘个数,配额大小不足,底层资源耗尽导致。 检查磁盘个数、配额大小,释放资源后重新创建。 无法创建数据库实例。 实例全量备份失败 fullBackupFailed 重要 单次全量备份失败产生的事件,不影响以前成功备份的文件,但会对“恢复到指定时间点”的功能有一些影响,导致“恢复到指定时间点”时增量备份的恢复时间延长。 重新执行一次手工备份。 备份失败。 主备切换异常 activeStandBySwitchFailed 重要 主备切换异常是由于网络、物理机有某种故障导致备机没有接管主机的业务,短时间内会恢复到原主机继续提供服务。 检查应用和数据库之间的连接是否重新建立了连接。 无 复制状态异常 abnormalReplicationStatus 重要 出现”复制状态异常“事件通常有两种情况: 1、主备之间复制时延太大(一般在写入大量数据或执行大事务的时候出现),在业务高峰期容易出现阻塞。 2、主备间的网络中断,导致主备复制异常。 提交工单。 但不会导致原来单实例的读写中断,客户的应用是无感知的。 复制状态异常已恢复 replicationStatusRecovered 重要 即复制时延已回到正常范围内,或者主备之间的网络通信恢复。 不需要处理。 无 实例运行状态异常 faultyDBInstance 重要 由于灾难或者物理机故障导致单机或者主实例故障时会上报本事件,属于关键告警事件。 检查是否有设置自动备份策略,并且提交工单。 可能导致数据库服务不可用。 实例运行状态异常已恢复 DBInstanceRecovered 重要 针对灾难性的故障,RDS有高可用工具会自动进行备机重建,重建完成之后即会上报本事件。 不需要处理。 无 单实例转主备实例失败 singleToHaFailed 重要 创建备机时或备机创建完成后主备机之间配置同步发生故障时会产生此事件,一般是由于备节点所在数据中心资源不足导致。 提交工单。 “单实例转主备实例失败”不会导致原来单实例的读写中断,客户的应用是无感知的。 数据库进程重新启动 DatabaseProcessRestarted 重要 一般是内存不足、负载过高导致数据库进程停止 通过云监控的数据,查看是否有内存飙升、cpu长期过高、磁盘满使用率不足等的情况,可以选择提升CPU内存规格或者优化业务逻辑 进程挂掉的时候,业务中断。RDS服务会自动拉起进程,尝试恢复业务。 实例磁盘满 instanceDiskFull 重要 一般是由于数据空间占用过大导致。 对实例进行扩容操作。 实例由于磁盘空间满将会变成只读实例,数据库不可进行写入操作。 实例磁盘满恢复 instanceDiskFullRecovered 重要 实例磁盘状态恢复正常。 不需要处理。 实例解除只读状态,恢复写操作。 kafka连接失败 kafkaConnectionFailed 重要 一般是由于网络波动或kafka服务端出现异常等原因导致。 检查网络状况和kafka服务端状态。 审计日志无法发送到kafka服务端。 表2 操作类事件 事件来源 事件名称 事件ID 事件级别 事件说明 RDS 重置数据库管理员密码 resetPassword 重要 重置数据库管理员密码 集群扩容等操作 instanceAction 重要 磁盘扩容、规格变更 删除集群下的实例 deleteInstance 次要 删除集群下的实例 修改备份策略 setBackupPolicy 次要 修改备份策略 修改参数组 updateParameterGroup 次要 修改参数组 删除参数组 deleteParameterGroup 次要 删除参数组 重置参数组 resetParameterGroup 次要 重置参数组 修改数据库端口号 changeInstancePort 重要 修改数据库端口号 实例主备切换 PrimaryStandbySwitched 重要 实例主备切换 父主题: 事件监控
  • 事件监控简介 事件监控提供了事件类型数据上报、查询和告警的功能。方便您将业务中的各类重要事件或对云资源的操作事件收集到云监控服务,并在事件发生时进行告警。 事件即云监控服务保存并监控的RDS资源的关键操作,您可以通过“事件”了解到谁在什么时间对系统哪些资源做了什么操作,如重置数据库管理员密码、修改备份策略等。 事件监控为您提供上报自定义事件的接口,方便您将业务产生的异常事件或重要变更事件采集上报到云监控服务。 事件监控默认开通,您可以在事件监控中查看系统事件和自定义事件的监控详情,目前支持的系统事件请参见事件监控支持的事件说明。 父主题: 事件监控
  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值
共100000条