检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
MySQL)代理的路由模式 GaussDB(for MySQL)数据库代理支持在开通数据库代理时,设置路由模式,默认为权重负载。也可以在数据库代理开通成功后,按照本章节方法修改路由模式。 路由模式的工作原理 GaussDB(for MySQL)数据库代理支持权重负载、负载均衡的路由模式,可根据需要配置不同的路由模式。
数据库代理路由模式。 取值范围: 0:表示权重负载模式。 1:表示负载均衡模式(数据库主节点不接受读请求)。 2:表示负载均衡模式(数据库主节点接受读请求)。 master_weight 否 Integer 主节点权重: 如果路由模式为0,取值为0~1000。 如果路由模式为1,取值为0。
读请求路由到主实例的场景 如果查询语句被放在事务中,事务请求都会路由到主实例。如果在查询语句前设置set autocommit=0时也当做事务处理路由到主实例。 如果所有只读节点都均异常或只读节点权重为0时,则查询会路由到主实例。对于成功开启读写分离功能的实例,您可以设置其主实例和
如果查询语句被放在事务中,事务请求都会路由到主实例。如果在查询语句前设置set autocommit=0时也当做事务处理路由到主实例。 如果所有只读节点都均异常或只读节点权重为0时,则查询会路由到主实例。对于成功开启读写分离功能的实例,您可以设置其主实例和只读实例的权重。 在执行SQL语句时:
0及以上。 路由模式 数据库代理支持如下路由模式: 权重负载:根据您设置的读权重比例分发读请求。 负载均衡:根据数据库节点的活跃连接数情况进行读请求分发,将读请求分发到活跃连接数较少的节点上。 负载均衡模式需要保证数据库代理的内核版本为2.22.07.000及以上。 更多关于路由模式的内容请参见修改GaussDB(for
开启GaussDB(for MySQL)代理的访问控制功能 数据库代理实例开启了负载均衡,数据库代理实例的安全组不生效,默认不限制连接数据库代理的源IP地址,需通过访问控制功能限制源IP地址。 使用须知 如果管理控制台上没有显示开启访问控制功能的按钮,说明数据库代理实例安全组会生效,不需要使用访问控制功能。
数据库代理类型。默认类型为readwrite。 route_mode 否 Integer 数据库代理路由模式,默认为0,权重负载模式。 取值范围: 0:表示权重负载模式。 1:表示负载均衡模式(数据库主节点不接受读请求)。 2:表示负载均衡模式(数据库主节点接受读请求)。 nodes_read_weight 否
手动主备倒换 功能介绍 用户手动进行主备倒换。 调用方法 请参见如何调用API。 URI PUT /v3/{project_id}/instances/{instance_id}/switchover 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String
滤。 使用方法 可以在SQL开头添加hint注释进行强制路由。 /*FORCE_MASTER*/强制路由到主节点; /*FORCE_SLAVE*/强制路由到只读节点; 例如:select * from table1默认会路由到只读节点,如果改为/*FORCE_MASTER*/ select
使用读内网地址连接应用。 增删只读节点功能打开后会将代理实例的路由模式调整为负载均衡,请谨慎操作。 手动创建的只读节点会受到设置的自动策略影响。比如:当只读节点数量下限设置为1时,手动创建了4个只读节点,如果CPU和内存等指标达到缩容条件,这些手动创建的只读节点也会被删除,直到到达下限。
能打开后不会调整代理实例的路由模式,路由模式为权重负载的代理实例中不合理的权重配置可能会导致增删只读节点功能失效,请谨慎配置。为了避免您的业务受影响,建议在使用增删只读节点功能时,在“数据库代理”中将Serverless节点设置为相同权重或使用负载均衡模式。 一个实例支持的最大只
如图2所示,1个GaussDB(for MySQL)实例有1个主节点和3个只读节点,已开启两个数据库代理实例,均使用权重负载的路由模式。 代理实例1为读写模式,已选主节点和只读节点1,读权重配置为100、200,则主节点和只读节点1将按照1:2的比例处理读请求。即主节点处理1/3的读请
场景选择不同的处理模式,当前处理模式支持Strict、Loose和Parse,默认Strict模式。 Strict模式(默认) Multi-Statements会发往主节点,当前连接的后续请求读写分离失效,会全部路由到主节点,需断开当前连接并重新连接才能恢复读写分离。 该模式不会
通过Hint指定SQL发往主实例或只读实例 在读写分离权重分配体系之外,在SQL开头添加hint注释进行强制路由: /*FORCE_MASTER*/:强制路由到主节点 /*FORCE_SLAVE*/:强制路由到只读节点 Hint注释仅作为路由建议,非只读SQL、事务中的场景不能强制路由到只读节点。
体操作请参见使用GaussDB(for MySQL)数据库代理实现读写分离。 操作步骤 登录管理控制台。 单击管理控制台左上角的,选择区域和项目。 在页面左上角单击,选择“数据库 > 云数据库 GaussDB(for MySQL)”。 在“实例管理”页面,选择指定的实例,单击实例名称,进入实例概览页面。
GaussDB(for MySQL)读写分离最佳实践 用户认证 连接池设置 读请求路由到主实例的场景
求会通过负载均衡模块分流至只读节点。 使用须知 设置事务拆分需要满足数据库代理内核版本为2.3.9.5及以上。 在默认的“REPEATABLE_READ”隔离级别下,云数据库GaussDB(for MySQL)不支持事务拆分功能。 仅“READ-UNCOMMITTED”和“REA
数据库代理路由模式。 取值范围: 0:表示权重负载模式。 1:表示负载均衡模式(数据库主节点不接受读请求)。 2:表示负载均衡模式(数据库主节点接受读请求)。 balance_route_mode_enabled Boolean 参数解释: 数据库代理版本是否支持负载均衡模式。 取值范围:
MySQL)新增设置备份加密。 GaussDB(for MySQL)新增开启和关闭备份加密。 公测 设置备份加密 4 GaussDB(for MySQL)新增设置路由模式。 GaussDB(for MySQL)支持权重负载和负载均衡两种路由模式。 公测 设置路由模式 5 GaussDB(for MySQL)新增修改读写分离端口号。
使用RegionlessDB集群实现异地灾备 操作场景 当主实例出现区域级别故障时,可以切换至从实例,实现业务的异地灾备。 如图1所示,一个RegionlessDB集群拥有一个主实例和一个从实例, 主实例是双可用区,从实例是单可用区。当主实例的主可用区故障时,业务优先切换到备可用区。当主实例的主备可用区均故障时,业务切换到从实例。