本章节介绍了PolarDB MySQL版集群之间的升级方案、前提条件、使用限制和收费规则等内容。
升级方案概述
PolarDB MySQL版支持不同版本之间以及不同架构之间的大版本升级,整个过程中将自动为您创建目标版本的PolarDB集群,并从源集群同步数据。升级后的PolarDB MySQL版集群包含源PolarDB MySQL版集群的账号信息、数据库信息、IP白名单和必要的参数。
版本之间升级。
如PolarDB MySQL版5.6升级至PolarDB MySQL版5.7,PolarDB MySQL版5.6升级至PolarDB MySQL版8.0.1等。
架构之间升级。
PolarDB MySQL版集群版升级至PolarDB MySQL版多主集群(库表)。
固定规格集群升级至Serverless集群。
具体的升级操作请参见升级步骤。
升级方案优势
可保留数据库原来的连接地址,无需修改应用程序的任何连接配置即可切换至目标版本。
升级链路30天内免费,不支持虚商、RAM用户(子账号)等账号参加该免费活动。
升级过程数据0丢失。
支持增量迁移,停机时间小于10分钟。
支持在线热升级,升级过程仅闪断一次。
支持回滚操作,升级失败可以在10分钟内恢复。
前提条件
PolarDB MySQL版产品版本需为企业版,产品系列需为集群版。
使用限制
类型 | 说明 |
源库限制 |
|
SQL语句限制 |
|
其他限制 |
|
其他注意事项 | DTS会在源库定时执行 |
注意事项
版本之间升级时,如果源集群的连接地址开启了SSL,并且您选择带地址切换来切换该地址,请确保目标集群对应的连接地址已开启SSL。
不支持为已加入全球数据库网络(GDN)的集群执行版本升级操作。
架构之间升级时,由于PolarDB MySQL版多主集群(库表)的连接地址不支持开启SSL,如果源集群的连接地址开启了SSL,则在升级至多主集群(库表)时,不支持使用带地址切换。
升级过程中,全量数据初始化时将占用源库和目标库一定的读写资源,可能会导致数据库的负载上升。
升级过程中,全量数据初始化时会并发执行INSERT操作,导致目标数据库的表产生碎片,因此全量初始化完成后目标集群的表空间比源集群的表空间大。
升级过程中,请勿手动释放DTS任务。
全量数据同步需要一定时间,耗时与数据量大小有关,在此期间,目标端状态为创建中,请耐心等待。
如果待升级的PolarDB集群是已有数据传输服务(DTS)的源集群或目标集群,则升级后需要将该DTS任务的源或目标集群修改为升级后的PolarDB集群。如数据同步任务、数据迁移任务以及数据订阅任务等。具体请参见修改DTS任务对象。
收费规则
大版本升级过程中,整个升级过程30天内不收取额外费用(不支持虚商、RAM用户(子账号)等账号参加该免费活动),即:
30天内不收取DTS迁移和同步任务的费用。
若目标PolarDB集群为按量付费集群时,目标集群在整个升级过程中不计费,而是在如下操作后才开始正常按量计费:
若目标PolarDB集群为Serverless集群,目标集群的状态变为运行中后,即开始计费。
若目标PolarDB集群为包年包月集群,则在创建目标PolarDB集群时预支付对应的费用。
说明建议您的目标PolarDB集群选择按量付费集群,以降低大版本升级的成本。
对于源集群为包年包月的集群,执行完大版本升级后,若您不需要再使用源集群,则可以申请转单优惠退款,以节省资源和成本。
带地址切换
PolarDB MySQL版集群之间的升级支持带地址切换,系统会自动交换源集群和目标集群上的连接地址。连接地址对应关系图如下所示:
版本之间升级连接地址对应关系图如下:
架构之间升级(集群版升级至多主集群(库表))连接地址对应关系图如下:
架构升级支持用户指定源集群和目标集群切换的地址。如源集群的主地址与目标集群的集群地址进行切换、源集群的主地址与目标集群的自定义地址进行切换、源集群的集群地址与目标集群的自定义地址进行切换等。连接地址内部映射关系图如下:
使用带地址切换功能时,需要注意以下几点:
带地址切换只会切换源集群和目标集群的域名,Vswitch和Vip等配置不会切换。
仅当源集群和目标集群同时存在连接地址才支持相互切换,默认情况下仅私网主地址支持带地址切换。
版本之间升级选择带地址切换时,源集群和目标集群的主地址一定会切换,可以选择不切换或切换多组。
架构之间升级选择带地址切换时,您可以选择源集群和目标集群的切换地址,可以选择不切换或切换多组。
如需切换其他连接地址,您需在切换前创建好对应的连接地址,否则不会切换。关于如何为PolarDB集群创建连接地址,请参见申请集群地址和主地址。
带地址切换不会切换端口,请确保源集群和目标集群的连接端口一致(PolarDB默认使用的端口号为3306),如需修改端口,请参见修改连接地址和端口。
切换域名后,可能会存在DNS解析缓存问题,在缓存过期时间内可能会出现连接不上数据库或数据库只支持读操作而无法执行写入操作等情况,建议您刷新一下服务器的DNS缓存。
升级评估
为了保证升级链路的顺利和更好的升级体验,PolarDB提供了升级评估功能,您可以校验在开始升级前,对实例状态、升级任务依赖、源实例属性信息等前提条件进行预校验,提前发现影响升级进度的前置条件并处理,以降低升级过程中的处理成本和资源成本。
具体操作说明,请参见升级评估。