华为云用户手册

  • 数据库基本设计规范 所有表如果没有特殊需求,都要使用InnoDB存储引擎。InnoDB存储引擎支持事务、行级锁、具有更好的恢复性、高并发下性能更强。 数据库和表的字符集统一使用UTF8字符集,避免由于字符集的转换产生乱码。 所有的表和字段都需要添加注释。使用comment从句添加表和列的备注,从设计初期维护好数据字典。 表单行长度不得超过1024字节。 谨慎使用Flexus云数据库RDS分区表,避免跨分区查询,否则查询效率会降低。分区表在逻辑上表现为一个表,但是在物理层面上将数据存储在多个文件。 表中的列不要太多,尽量做到冷热数据分离,减小表的宽度,以便在一页内存中容纳更多的行,进而减少磁盘IO,更有效的利用缓存。 经常一起使用的列尽量放到一个表中,避免过多的关联操作。 禁止在表中建立预留字段,否则修改列的类型会导致锁表,修改一个字段类型的成本要高于增加一个字段。 禁止在数据库中存储图片、文件等大的二进制数据。 不建议使用全文索引,社区MySQL全文索引局限性较多。
  • 数据库索引设计规范 每个InnoDB表强烈建议有一个主键,且不使用更新频繁的列作为主键,不使用多列主键。不使用UUID、MD5、字符串列作为主键。最好选择值的顺序是连续增长的列作为主键,所以建议选择使用自增ID列作为主键。 限制每张表上的索引数量,建议单张表索引不超过5个。索引并不是越多越好,索引可以提高查询的效率,但会降低写数据的效率。有时不恰当的索引还会降低查询的效率。 禁止给表中的每一列都建立单独的索引。设计良好的联合索引比每一列上的单独索引效率要高出很多。 建议在下面的列上建立索引: 在SELECT,UPDATE,DELETE语句的WHERE从句上的列。 在ORDER BY,GROUP BY,DISTINCT上的列。 多表JOIN的关联列。 索引列顺序: 区分度最高的放在联合索引的最左侧。区分度=列中不同值的数量/列的总行数。 尽量把字段长度小的列放在联合索引的最左侧。因为字段长度越小,一页能存储的数据量越大,IO性能也就越好。 使用最频繁的列放到联合索引的左侧。这样可以比较少的建立一些索引。 避免冗余的索引,如:primary key(id),index(id),unique index(id) 避免重复的索引,如:index(a,b,c),index(a,b),index(a),重复的和冗余的索引会降低查询效率,因为Flexus云数据库RDS查询优化器会不知道该使用哪个索引。 在VARCHAR字段上建立索引时,需指定索引长度,没必要对全字段建立索引,根据实际文本区分度决定索引长度即可。 一般对字符串类型数据,长度为20的索引,区分度会高达90%以上,可以使用 count(distinct left(列名, 索引长度))/count(*) 的区分度来确定。 对于频繁查询优先考虑使用覆盖索引。 覆盖索引指包含了所有查询字段的索引,不仅仅是WHERE从句GROUP BY从句中的列,也包含SELECT查询的列组合,避免InnoDB表进行索引的二次查询。 外键约束: 建立外键关系的对应列的字符集必须保持一致或者存在外键关系的子表父表的字符集保持一致。
  • 数据库命名规范 所有的数据库对象名称(包括库名、表名、列名等)建议以小写字母命名,每个单词之间用下划线分隔。 所有的数据库对象名称禁止使用FlexusRDS for MySQL保留关键字。 MySQL官方保留字与关键字(MySQL 8.0):https://dev.mysql.com/doc/refman/8.0/en/keywords.html MySQL官方保留字与关键字(MySQL 5.7):https://dev.mysql.com/doc/refman/5.7/en/keywords.html 数据库对象的命名要能做到见名知意,并且不超过32个字符。 数据库中用到的临时表以“tmp”为前缀并以日期为后缀。 数据库中用到的备份表以“bak”为前缀并以日期为后缀。 在不同的库或表中,要保证所有存储相同数据的列名和列类型必须一致。
  • 数据库字段设计规范 控制单表字段数量,字段上限50左右。 优先为表中的每一列选择符合存储需要的最小的数据类型。优先考虑数字类型,其次为日期或二进制类型,最后是字符类型。列的字段类型越大,建立索引占据的空间就越大,导致一个页中的索引越少,造成IO次数增加,从而影响性能。 整数型选择能符合需求的最短列类型,如果为非负数,声明需是无符号(UNSIGNED)类型。 每个字段尽可能具有NOT NULL属性,int等数字类型默认值推荐给0,varchar等字符类型默认值给空字符串。 避免使用ENUM类型,可以用TINYINT类型替换。 修改ENUM值需要使用ALTER语句,ENUM类型的ORDER BY操作效率低,需要额外操作。 如果定义了禁止ENUM的枚举值是数值,可使用其他数据类型(如char类型)。 实数类型使用DECIMAL,禁止使用FLOAT和DOUBLE类型。 FLOAT和DOUBLE在存储的时候,存在精度损失的问题,很可能在值的比较时,得到错误的结果。 使用datetime、timestamp类型来存储时间,禁止使用字符串替代。 使用数字类型INT UNSIGNED存储IP地址,用INET_ATON、INET_NTOA可以在IP地址和数字类型之间转换。 VARCHAR类型的长度应该尽可能短。VARCHAR类型虽然在硬盘上是动态长度的,但是在内存中占用的空间是固定的最大长度。 使用VARBINARY存储大小写敏感的变长字符串,VARBINARY默认区分⼤小写,没有字符集概念,速度快。
  • 操作步骤 进入Flexus云数据库RDS控制台。 首次创建实例,单击“立即购买”,进入购买页面。 填选实例信息后,单击“立即购买”。 图1 选择规格 图2 选择购买时长 表1 基本信息 参数 描述 区域 资源所在的区域。 说明: 不同区域内的产品内网不互通,且创建后不能更换,请谨慎选择。 数据库引擎 MySQL 8.0、MySQL 5.7。 性能规格 FlexusRDS for MySQ L实例 的性能规格包括vCPU个数和内存、数据盘大小,以及实例类型。 数据盘:购买的存储空间大小,购买完成后支持设置自动扩容,最大可扩容至4000GB,详见自动扩容FlexusRDS for MySQL实例存储空间。 实例类型 主备:一主一备的经典高可用架构。备机提高了实例的可靠性,创建主机的过程中,同步创建备机,备机创建成功后,用户不可见。 单机:采用单个数据库节点部署架构,与主备实例相比,它只包含一个节点,但具有高性价比。 实例名称 实例名称长度最小为4字符,最大为64个字符,如果名称包含中文,则不超过64字节(注意:一个中文字符占用3个字节),必须以字母或中文开头,区分大小写,可以包含字母、数字、中划线、下划线、英文句号或中文,不能包含其他特殊字符。 购买多个数据库实例时,名称自动按序增加4位数字后缀。例如输入instance,从instance-0001开始命名;如果已有instance-0010,从instance-0011开始命名。 购买时长 选择所需的时长,系统会自动计算对应的配置费用,时间越长,折扣越大。 自动续费 默认不勾选,不进行自动续费。 勾选后实例自动续费,自动续费周期与原订单周期一致。 购买数量 单次最多可批量申请50个数据库实例。如果您选择创建主备实例,数量选择为1,那么会同步创建一个主实例和一个备实例。 进行订单确认。 图3 订单确认 如果需要重新选择实例规格,单击“上一步”,回到上个页面修改实例信息。 如果订单确认无误,单击“去支付”,进入“付款”页面。 选择付费方式,完成付费。 FlexusRDS for MySQL实例创建成功后,用户可以在实例列表对其进行查看和管理。 创建实例过程中,状态显示为“创建中”,创建完成的实例状态显示为“正常”。 创建实例时,系统默认开启自动备份策略。实例创建成功后,系统会自动创建一个全量备份。 数据库实例的管理员账号默认root。 创建实例时,系统会随机设置管理员账号的密码,连接数据库实例之前,需要先通过重置密码的方式设置密码,否则无法连接数据库实例。 数据库端口默认3306,不支持修改。 数据库实例所属的VPC、子网、安全组默认为vpc-default-smb、subnet-default-smb、sg-default-smb,并且都不支持修改。
  • 为什么FlexusRDS for MySQL不支持MyISAM引擎 FlexusRDS for MySQL目前不支持MyISAM引擎,主要原因如下: MyISAM引擎表不支持事务,仅支持表级别锁,导致读写操作相互冲突。 MyISAM对数据完整性的保护存在缺陷,且这些缺陷会导致数据库数据的损坏甚至丢失。 MyISAM在出现数据损害情况下,很多都需要手动修复,无法通过产品服务提供的恢复功能进行数据恢复。 MyISAM向InnoDB的迁移透明,大多数情况不需要改动建表的代码,云数据库自动转换InnoDB即可完成迁移。
  • FlexusRDS for MySQL的root账号为什么没有super权限 FlexusRDS for MySQL没有给root账号提供super权限。因为一旦用户拥有了super权限,就可以执行很多管理性的命令,比如reset master,set global…,kill线程,reset slave等,很有可能导致主备关系异常而出现故障。 对于客户要求super权限的场景,只能通过Flexus云数据库RDS提供的服务化能力处理,或者通过其他手段绕过super权限的限制。示例如下: 示例1:登录数据库执行 set global 参数名=参数值; 命令来修改参数,这在FlexusRDS for MySQL是被禁止的,参数修改只能通过界面的参数修改功能来实现。 示例2:执行 create definer='root'@'%' trigger(procedure)… 命令出现报错,这也是因为没有super权限导致的,只需要去除definer='root'关键字即可。
  • 编辑标签 在实例列表,选择指定的实例,单击实例名称。 选择“标签”,单击“编辑标签”。 在右侧弹出框中,单击“添加新标签”,输入标签的键和值,单击“确定”。 标签的键不能为空且必须唯一,长度为1~128个字符,可以包含任意语种字母、数字、空格和 _ . : = + - @,但首尾不能含有空格,不能以_sys_开头。 标签的值可以为空字符串,长度为0~255个字符,可以包含任意语种字母、数字、空格和 _ . : / = + - @。 添加成功后,您可在当前实例的所有关联的标签集合中,查询并管理自己的标签。
  • 解决方案 检查安全组规则。 使用弹性公网IP连接数据库实例时,必须要将弹性公网IP和3306端口加入安全组“sg-default-smb”的入方向规则。具体操作,请参见添加安全组规则。 图1 添加入方向规则 检查“网络ACL”规则。 排查“网络ACL”是否放通。查看“网络ACL”状态,查看当前是开启状态还是关闭状态。 检查“弹性公网IP”绑定的网卡是否在“网络ACL”关联的子网下。 若“网络ACL”为“开启”状态,需要添加ICMP放通规则进行流量放通。 需要注意“网络ACL”的默认规则是丢弃所有出入方向的包,若关闭“网络ACL”后,其默认规则仍然生效。 相同区域主机进行ping测试。 用同一区域的其它Flexus云服务器X实例去ping该公网IP,如果可以ping通说明虚拟网络正常,请联系客服处理问题。
  • FlexusRDS的备份策略是什么 当用户购买实例后,单击实例名称,然后选择“备份恢复”页签,提供手动备份和自动备份两种功能: 默认是开启自动备份,为了给您最大限度的节约备份空间和费用,自动备份数据保留7天,超过7天的自动备份数据会删除。如果需要更长的备份保留时间,请使用手动备份。 为了丰富用户选择,提供手动物理备份功能,您可以根据业务需要,进行手动备份,手动备份数据可以下载到本地保存。手动备份数据不受7天自动删除限制,建议您使用手动备份+恢复的方式,可以恢复7天之外的数据。 无论是自动备份还是手动备份都是存储在OBS上的,占用OBS赠送空间。 Flexus云数据库RDS备份使用的是开源软件extrabackup。
  • 云审计 服务支持的FlexusRDS操作列表 通过云审计服务,您可以记录与Flexus云数据库RDS实例相关的操作事件,便于日后的查询、审计和回溯。 表1 云审计服务支持的Flexus云数据库RDS操作列表 操作名称 资源类型 事件名称 创建实例、恢复到新实例 instance createInstance 自动扩容 instance instanceAction 实例重启 instance instanceRestart 恢复到原有实例 instance instanceRestore 实例重命名 instance instanceRename 重置密码 instance resetPassword 设置数据库版本配置参数 instance setDBParameters 绑定解绑EIP instance setOrResetPublicIP 创建标签 instance createTag 删除标签 instance deleteTag 修改标签 instance modifyTag 删除实例 instance deleteInstance 创建快照 backup createManualSnapshot 下载备份(通过OBS下载) backup downLoadSnapshot 下载备份(通过浏览器下载) backup backupsDownLoad 删除快照 backup deleteManualSnapshot 冻结删除 all rdsUnsubscribeInstance 实例冻结 all rdsfreezeInstance 续费 all bssUpdateMetadata 父主题: CTS 审计
  • FlexusRDS的备份是如何收费的 Flexus云数据库RDS的全量备份和增量备份都是存储在OBS上。另外,FlexusRDS for MySQL有100%的赠送空间。举个例子,假如用户购买实例套餐时,规格选择了2U4GB_120GB,那么用户会拥有一个2U4GB的实例、120GB存储空间、120GB OBS备份空间。所有的备份数据合计,只有超过120GB才开始计费。备份空间只能按需计费,收费标准参考云数据库备份空间计费规则。
  • 参数解析 表1 慢日志相关的参数解析 参数名称 说明 log_min_duration_statement 设置最小执行时间,执行时间大于等于这个值的语句都将被记录。 参数值变小会导致日志记录增加,进而增加磁盘I/O消耗,降低SQL性能。 log_statement 记录SQL语句的类型。该参数默认值为“ddl”,且不支持修改。 cron.log_statement 执行任务前,是否将SQL打印到日志。该参数默认值为“on”。
  • 查看日志明细 在实例列表,选择目标实例,单击实例名称。 选择“日志”,在“慢日志”页签下,查看慢SQL语句的详细信息。 慢日志功能支持查看指定执行语句类型或时间段的慢日志记录。 针对当前的慢日志功能, 阈值参数“log_min_duration_statement”可以控制SQL响应时间为多少而生成一条慢日志记录,只会影响新增的部分。比如慢日志阈值参数为1000毫秒时,上报了超过1000毫秒的慢日志记录,后续调整为100毫秒,原有上报的日志仍然会展示。 目前支持查询2000条慢日志明细。
  • 下载慢日志 在实例列表,选择目标实例,单击实例名称。 选择“日志”,在右侧单击“日志下载”。 在弹框中,选择“慢日志”。 对状态为“准备完成”的日志文件,单击操作列中的“下载”,下载慢日志。 图1 下载慢日志 系统会自动加载下载准备任务,加载时长受日志文件大小及网络环境影响。 下载准备过程中,日志文件状态显示为“准备中...”。 下载准备完成,日志文件状态显示为“准备完成”。 下载准备工作失败,日志文件状态显示为“异常”。 “准备中...”和“异常”状态的日志文件不支持下载。 当前页面支持下载的文件最大不超过40MB,时间范围是从当前时间往前计算,直至文件大小累计为40MB。 下载链接有效期为5分钟。如果超时,提示用户下载链接已失效,是否重新下载。如果需要重新下载,单击“确定”,否则单击“取消”。 下载的日志仅包含主节点的日志。
  • 操作场景 慢日志用来记录执行时间超过当前慢日志阈值“log_min_duration_statement”的语句,您可以通过慢日志的日志明细,查找出执行效率低的语句,进行优化。您也可以下载慢日志进行业务分析。 目前支持查看近30天的慢日志。 FlexusRDS for PostgreSQL支持以下执行语句类型: 全部 SELECT INSERT UPDATE DELETE CREATE DROP ALTER DO CALL COPY WITH OTHER
  • FlexusRDS怎么扩CPU/内存规格 Flexus云数据库RDS提升了客户使用效率,简化了业务管理,节省的成本给客户进行让利,不提供规格变更直接服务。 建议客户购买前做好业务规划,可以提交工单,联系客服获取专业性建议。规划好业务后直接按套餐化购买,购买后按套餐的配置使用,不提供直接进行规格变更的功能。 针对客户CPU/内存不够使用的场景,我们通过备份恢复功能提供了灵活的解决方案。 例如,通过备份恢复到新实例,在新实例的选择过程中,您可以选择新的符合业务需要的规格。
  • 查看日志明细 在实例列表,选择目标实例,单击实例名称。 选择“日志”,在“错误日志”页签下,查看错误日志的详细信息。 您可单击页面右上角的级别筛选框查看不同级别的日志记录。 Flexus云数据库RDS实例支持查看以下级别的错误日志: All log levels ERROR FATAL PANIC 错误日志通过日志加载的方式展示,在查询时间范围内日志条数没有上限,不显示日志总条数。 您还可单击右上角的选择时间区域,查看不同时间段内的错误日志。 对于无法完全显示的“描述”,鼠标悬停查看完整信息。
  • 下载错误日志 在实例列表,选择目标实例,单击实例名称。 选择“日志”,在右侧单击“日志下载”。 对状态为“准备完成”的日志文件,单击操作列中的“下载”,下载错误日志。 图1 下载错误日志 系统会自动加载下载准备任务,加载时长受日志文件大小及网络环境影响。 下载准备过程中,日志文件状态显示为“准备中...”。 下载准备完成,日志文件状态显示为“准备完成”。 下载准备工作失败,日志文件状态显示为“异常”。 “准备中...”和“异常”状态的日志文件不支持下载。 支持下载40MB~100MB的日志文件。 下载链接有效期为5分钟。如果超时,提示用户下载链接已失效,是否重新下载。如果需要重新下载,单击“确定”,否则单击“取消”。 下载的日志仅包含主节点的日志。
  • 设置告警规则 在监控指标卡片上,单击“+”,跳转到设置告警规则页面。 图2 选择监控指标 在“创建告警规则”页面,填选相关信息。 名称:系统会随机产生一个名称,用户也可以进行修改。 描述:告警规则描述。 告警策略:触发告警规则的告警策略。是否触发告警取决于连续周期的数据是否达到阈值。 发送通知:配置是否发送邮件、短信、HTTP和HTTPS通知用户。 关于告警通知的配置,请参见《 云监控 用户指南》。 单击“立即创建”,告警规则创建完成。
  • 查看监控指标 在实例列表,选择目标实例,单击实例名称。 选择“监控”,查看实例的监控指标。 图1 监控指标 表1 支持的监控指标 指标名称 指标含义 取值范围 测量对象 监控周期(原始指标) 非活跃逻辑复制槽数量 该指标用于统计当前数据库中存在的非活跃逻辑复制槽数量。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 CPU使用率 该指标用于统计测量对象的CPU使用率,以比率为单位。 0-100% FlexusRDS for PostgreSQL实例 1分钟 每分钟临时文件生成数量 该指标为获取临时文件在1分钟内生成的数量。 ≥ 0 Count/min FlexusRDS for PostgreSQL实例 1分钟 内存使用率 该指标用于统计测量对象的内存使用率,以比率为单位。 0-100% FlexusRDS for PostgreSQL实例 1分钟 每分钟临时文件生成大小 该指标为获取临时文件在1分钟内生成的大小。 ≥ 0 Byte/min FlexusRDS for PostgreSQL实例 1分钟 IOPS 该指标用于统计当前实例,单位时间内系统处理的I/O请求数量(平均值)。 ≥ 0 counts/s FlexusRDS for PostgreSQL实例 1分钟 同步复制阻塞时间 该指标为获取同步复制主备机间复制阻塞的时长。 ≥ 0 s FlexusRDS for PostgreSQL实例 1分钟 网络输入吞吐量 该指标用于统计平均每秒从测量对象的所有网络适配器输入的流量,以字节/秒为单位。 ≥ 0 bytes/s FlexusRDS for PostgreSQL实例 1分钟 备机(只读)流复制状态 该指标为获取备机(只读)流复制状态,0:备机(只读)异常,1:备机(只读)正常,2:该实例为主机。 Count FlexusRDS for PostgreSQL实例 1分钟 网络输出吞吐量 该指标用于统计平均每秒从测量对象的所有网络适配器输出的流量,以字节/秒为单位。 ≥ 0 bytes/s FlexusRDS for PostgreSQL实例 1分钟 inode数 数据盘已使用的inode数。 ≥ 0 Counts FlexusRDS for PostgreSQL实例 5分钟 磁盘利用率 该指标用于统计测量对象的磁盘利用率,以比率为单位。 0-100% FlexusRDS for PostgreSQL实例 1分钟 事务日志使用量 事务日志所占用的磁盘容量。 ≥ 0 MB FlexusRDS for PostgreSQL实例 1分钟 复制插槽使用量 复制插槽文件所占磁盘容量。 ≥ 0 MB FlexusRDS for PostgreSQL实例 1分钟 数据库连接数 当前连接到数据库的后端量。 ≥ 0 counts FlexusRDS for PostgreSQL实例 1分钟 事务最大已使用ID数 事务最大已使用ID。 ≥ 0 counts FlexusRDS for PostgreSQL实例 1分钟 事务日志生成速率 平均每秒生成的事务日志大小。 ≥ 0 MB/s FlexusRDS for PostgreSQL实例 1分钟 最滞后副本滞后量 多个副本中最滞后副本(依据接收到的WAL数据)滞后量。 ≥ 0 MB FlexusRDS for PostgreSQL实例 1分钟 复制时延 副本滞后时延。 ≥ 0 ms FlexusRDS for PostgreSQL实例 1分钟 用户使用连接数 该指标为统计用户实际使用的连接数(不包括监控运维使用的内置连接)。 ≥ 0 Counts FlexusRDS for PostgreSQL实例 1分钟 用户活跃连接数 该指标为统计用户实际使用的活跃连接数(不包括监控运维使用的内置活跃连接)。 ≥ 0 Counts FlexusRDS for PostgreSQL实例 1分钟 TPS 该指标用于统计每秒事务执行次数,含提交和回退的次数。 ≥ 0 次/秒 FlexusRDS for PostgreSQL实例 1分钟 连接数使用率 该指标用于统计当前已用的PgSQL连接数占总连接数的百分比。 0-100% FlexusRDS for PostgreSQL实例 1分钟 活跃连接数 该指标为统计数据库当前活跃连接数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 事务空闲连接数 该指标为统计数据库当前空闲连接数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 操作行数 实例每秒增删改查操作的行数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 最长事务存活时长 该指标为统计当前数据库中存在的最长事务存活时长。 ≥ 0 ms FlexusRDS for PostgreSQL实例 1分钟 最长未决事务存活时长 该指标为统计当前数据库存在的最长未决事务存活时长。 ≥ 0 ms FlexusRDS for PostgreSQL实例 1分钟 磁盘IO使用率 该指标为统计磁盘IO使用率。磁盘IO使用率是指磁盘正在处理IO请求的时间与总时间的百分比。 说明: 当磁盘IO使用率达到100%,只能说明在统计时间段内,磁盘一直有数据写入,磁盘性能还需要结合IOPS、磁盘的吞吐量、读写时延等多个指标共同决定。 0-100% FlexusRDS for PostgreSQL实例 1分钟 等待锁的会话数 该指标为统计当前处于阻塞状态的会话个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 swap in速率 该指标为统计每秒从交换区写到内存的大小。 ≥ 0 KB/s FlexusRDS for PostgreSQL实例 1分钟 swap out速率 该指标为统计每秒写入交换区的内存的大小。 ≥ 0 KB/s FlexusRDS for PostgreSQL实例 1分钟 交换区总容量大小 该指标为统计交换区总量。 ≥ 0 MB FlexusRDS for PostgreSQL实例 1分钟 交换区容量使用率 该指标为统计交换区使用率。 0-100% FlexusRDS for PostgreSQL实例 1分钟 最大数据库年龄 该指标为统计当前数据库的最大数据库年龄(获取表pg_database中max(age(datfrozenxid))值)。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 用户态CPU时间占比 该指标为统计用户态CPU时间占比。 0-100% FlexusRDS for PostgreSQL实例 1分钟 内核态CPU时间占比 该指标为统计内核态CPU时间占比。 0-100% FlexusRDS for PostgreSQL实例 1分钟 硬盘IO等待时间占比 该指标为统计硬盘IO等待时间占比。 0-100% FlexusRDS for PostgreSQL实例 1分钟 IO读响应延迟 该指标为统计磁盘读响应平均延迟(以毫秒为单位)。 ≥ 0 ms FlexusRDS for PostgreSQL实例 1分钟 IO写响应延迟 该指标为统计磁盘写响应平均延迟(以毫秒为单位)。 ≥ 0 ms FlexusRDS for PostgreSQL实例 1分钟 读IOPS 该指标用于统计当前实例,单位时间内系统处理的读I/O请求数量(平均值)。 ≥ 0 counts/s FlexusRDS for PostgreSQL实例 1分钟 写IOPS 该指标用于统计当前实例,单位时间内系统处理的写I/O请求数量(平均值)。 ≥ 0 counts/s FlexusRDS for PostgreSQL实例 1分钟 已执行1s的SQL数 该指标为统计数据库执行时长1秒以上的慢SQL个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已执行3s的SQL数 该指标为统计数据库执行时长3秒以上的慢SQL个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已执行5s的SQL数 该指标为统计数据库执行时长5秒以上的慢SQL个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已执行log_min_duration_statement时长的SQL数 该指标为统计数据库执行时长比参数log_min_duration_statement大的慢SQL个数,该参数大小可根据业务需要进行更改。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 WAL日志占用空间大小 该指标为获取当前WAL日志所占空间大小。 ≥ 0 GB FlexusRDS for PostgreSQL实例 5分钟 审计日志大小 该指标为获取当前审计日志的大小。 ≥ 0 GB FlexusRDS for PostgreSQL实例 5分钟 内存命中率 内存命中率 ≥ 0 % FlexusRDS for PostgreSQL实例 1分钟 已开启1s的事务数 该指标为统计数据库开启时长1秒以上的长事务个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已开启3s的事务数 该指标为统计数据库开启时长3秒以上的长事务个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已开启5s的事务数 该指标为统计数据库开启时长5秒以上的长事务个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已空闲1s的事务数 该指标为统计数据库空闲时长1秒以上的长事务个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已空闲3s的事务数 该指标为统计数据库空闲时长3秒以上的长事务个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已空闲5s的事务数 该指标为统计数据库空闲时长5秒以上的长事务个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已执行1s的两阶段事务 该指标为统计数据库两阶段执行时长1秒以上的长事务个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已执行3s的两阶段事务 该指标为统计数据库两阶段执行时长3秒以上的长事务个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟 已执行5s的两阶段事务 该指标为统计数据库两阶段执行时长5秒以上的长事务个数。 ≥ 0 FlexusRDS for PostgreSQL实例 1分钟
  • 修改单个参数 在实例列表,选择指定的实例,单击实例名称。 选择“参数设置”。 在参数列表的“操作”列,单击“修改”,修改参数值。 根据参数列表中“是否需要重启”提示,进行相应操作: 是:在实例列表中,查看“运行状态”,如果显示“参数变更,等待重启”,则需重启实例使之生效。 修改主实例的某些参数(如果是主备实例,备实例的参数也会被同步修改),需重启主实例使之生效。 否:无需重启,立即生效。 图1 参数修改 单击“确认”,在弹框中单击“是”,保存修改。 单击“取消”,放弃本次设置。 参数修改完成后,您可以单击“参数修改历史”,查看参数的修改详情。当前仅显示7天之内的参数修改历史。
  • 批量修改参数 在实例列表,选择指定的实例,单击实例名称。 选择“参数设置”。 打开批量修改开关,一次最多可以修改30个参数。 根据参数列表中“是否需要重启”提示,进行相应操作: 是:在实例列表中,查看“运行状态”,如果显示“参数变更,等待重启”,则需重启实例使之生效。 修改主实例的某些参数(如果是主备实例,备实例的参数也会被同步修改),需重启主实例使之生效。 否:无需重启,立即生效。 单击“保存”,在弹框中单击“是”,保存修改。 单击“取消”,在弹框中单击“是”,放弃本次设置。 参数修改完成后,您可以单击“参数修改历史”,查看参数的修改详情。当前仅显示7天之内的参数修改历史。
  • 修改性能参数 若干参数相关说明如下: 参数“log_statement”配置为“ddl”、“mod”或“all”,会记录创建及删除数据库用户的操作,包含数据库用户的密码等敏感信息,同时也会影响数据库的性能,请确认后进行配置。 开启参数“log_hostname”、“log_duration”、“log_connections”和“log_disconnections”会影响数据库的性能,请确认后进行配置。 “shared_buffers”参数配置的合理范围是系统内存的25%~40%,参数可配置的最大值为系统内存的80%,参数值过大会影响数据库的性能,请确认后进行配置。 “max_worker_processes”参数配置与“max_parallel_workers”、“max_parallel_workers_per_gather”参数值有关,建议根据业务需求进行配置,配置过大会影响数据库性能,请确认后进行配置。
  • 修改敏感参数 若干参数相关说明如下: 参数“search_path”值,必须配置为以逗号分隔的模式名序列,并需确保该模式名存在,否则会影响数据库的使用。 开启参数“log_duration”,可能会在日志中记录带有敏感信息的SQL语句,建议关闭该配置。 参数“log_min_duration_statement”用于设置最小执行时间,执行时间大于等于这个值的语句都将被记录,单位为毫秒。 值为0,表示记录所有语句,值为-1,表示不记录语句。具体请参见查看或下载FlexusRDS for PostgreSQL实例慢日志。 参数“temp_file_limit”是指在一个会话中触发临时文件写盘操作时,所有临时文件的总空间大小,单位为KB。取值范围为-1~2,147,483,647,值为-1,表示临时文件空间大小没有限制。 支持PostgreSQL 12、13、14、15版本。 通常避免设置值为-1,防止临时文件占用过多的磁盘空间,导致用户业务异常。 如果将参数值修改为较大值供临时使用,使用完成后没有将参数修改为原来的值,可能会导致误用临时空间导致占满磁盘停止用户业务,且用户实例变为异常。 “max_pred_locks_per_transaction”和“max_locks_per_transaction”参数的配置与“max_connections”、“max_prepared_transactions”的参数值有关,请结合实际业务需要进行配置,如果配置的参数值过大,可能会导致实例异常。
  • 操作步骤 在实例列表,选择指定的实例,单击实例名称。 选择“备份恢复”。 在备份列表上方,单击“一键恢复”。 选择恢复日期和该日期下可恢复的时间区间,并输入要恢复到的时间点,选择恢复方式,单击“确定”。 恢复到新实例 跳转到“恢复到新实例”的服务选型页面: 新实例的数据库引擎版本,自动与原实例相同。 新实例的规格套餐可以重新选择,并且新实例磁盘大小必须大于或等于原实例的磁盘。 关于购买页各配置项说明,请参见购买FlexusRDS for PostgreSQL实例。 在恢复到新实例的页面,重新选择新套餐,即可实现规格变更。 查看恢复结果。 恢复到新实例 为用户重新创建一个和该时间点数据相同的实例。可看到实例由“创建中”变为“正常”,说明恢复成功。 恢复成功的新实例是一个独立的实例,与原有实例没有关联。实例创建完成后,系统会自动执行一次全量备份。
  • 操作步骤 在实例列表,选择指定的实例,单击实例名称。 选择“备份恢复”。 选择需要恢复的可用备份,单击操作列中的“恢复”。 选择需要的恢复方式,单击“确定”。 新实例:将备份恢复到新创建的实例上。 选择恢复到“新实例”,单击“确定”,跳转到“恢复到新实例”的服务选型页面: 新实例的数据库引擎版本,自动与原实例相同。 新实例的规格套餐可以重新选择,并且新实例磁盘大小必须大于或等于原实例的磁盘。 关于购买页各配置项说明,请参见购买FlexusRDS for PostgreSQL实例。 在恢复到新实例的页面,重新选择新套餐,即可实现规格变更。 查看恢复结果。 恢复到新实例 为用户重新创建一个和该备份数据相同的实例。可看到实例由“创建中”变为“正常”,说明恢复成功。 恢复成功的新实例是一个独立的实例,与原有实例没有关联。新实例创建成功后,系统会自动执行一次全量备份。
  • 方式1:使用OBS Browser+下载 在实例列表,选择指定的实例,单击实例名称。 选择“备份恢复”。 选择需要下载的可用备份,单击操作列中的“下载”。 在弹出框中,单击“OBS Browser+下载”,单击“确定”,通过OBS Browser+客户端下载备份文件。 图1 OBS Browser+下载 图2 下载指导页面 单击下载指导页面步骤1的“OBS Browser+”,下载客户端工具OBS Browser+。 解压并安装OBS Browser+。 使用下载指导页面步骤2的用户名,登录客户端工具OBS Browser+。 图3 登录OBS Browser+ 使用下载指导页面步骤2的桶名,挂载外部桶。 图4 挂载外部桶 如果需要跨账号访问 对象存储服务 的外部桶,需要添加访问权限,请参见对其他账号下的 IAM 用户授予桶和桶内资源的访问权限。 下载备份文件。 在OBS Browser+界面,单击添加成功的外部桶桶名,进入对象列表页面,在右侧搜索栏,输入下载指导页面步骤3的文件名称并检索,单击,下载备份文件。 图5 下载备份文件
  • 方式3:按地址下载 在实例列表,选择指定的实例,单击实例名称。 选择“备份恢复”。 选择需要下载的可用备份,单击操作列中的“下载”。 在弹出框中,选择“按地址下载”,单击复制地址,通过下载地址下载备份文件。 图7 按地址下载 您还可以使用wget命令下载备份文件: wget -O FILE_NAME --no-check-certificate "DOWNLOAD_URL" 命令中的参数解释如下: FILE_NAME:下载成功后的备份文件名称,由于原始文件名称较长,可能会超出客户端文件系统的限制,建议下载备份文件时使用“-O”进行重命名。 DOWNLOAD_URL:需下载的备份文件所在路径,如果包含特殊字符则需要转义。
  • 操作步骤 在实例列表,单击实例名称,进入“概览”页面。 单击自动扩容处的“设置”。 在弹框中,单击,设置如下参数: 图1 自动扩容 表1 参数说明 类别 说明 自动扩容 存储空间自动扩容开关。 可用最小存储空间 当可使用存储空间百分比小于等于该阈值时(10%、15%、20%),会触发自动扩容。 每次扩容大小 每次自动扩容的容量百分比,默认取值:5%~50%。 存储自动扩容上限 自动扩容上限,取值:120~4000,单位:GB。需要大于等于实例当前存储空间总大小。 单击“确定”。
共100000条