#扩缩容注意事项
执行扩/缩容操作前,请仔细阅读相关注意事项:
建议在进行扩缩容操作前先备份数据库,确保有可用于恢复的备份集。
规划扩容规模时需确保:
在共享集群部署中,若需将单集群扩容为主备集群部署,须确保开启归档功能(默认已开启)并正确配置主备集群通信地址(REPLICATION_ADDR参数)。上述两项操作均需重启整个数据库集群生效,请选择业务低峰时段执行。
扩缩容前,需先暂时关闭yasom仲裁选主,待扩缩容完成后再按需还原相关配置。
如需新增服务器进行扩容,需先参考安装前准备检查并确保新服务器的各项环境/配置已满足要求。
扩缩容不能与以下操作并发:
单机主备部署扩缩容:降备(Switchover)、表空间等数据文件增/删/RESIZE操作。
共享集群部署扩缩容:ALTER DATABASE的add_instance_clauses、集群降备(Switchover)、表空间等数据文件增/删/RESIZE、Redo文件增/删、YStream服务的创建/运行、分布式事务、备份/恢复、其他实例加入共享集群(即从NOMOUNT阶段启动到MOUNT/OPEN阶段)等操作。
存算一体分布式集群扩缩容:降备(Switchover)、扩缩容DN组期间会阻塞DDL以及拦截下列yasboot命令:
$ yasboot cluster restart $ yasboot group restart $ yasboot node restart $ yasboot group add/remove $ yasboot node add/remove $ yasboot dataspace redistribute
在扩缩容过程中请不要通过yasboot对当前数据库环境中的任何节点进行强制重启/停止,否则可能会造成扩缩容失败后无法成功执行node remove --clean或group remove --clean命令。
存算一体分布式集群扩缩容DN组前,还需注意:
需确保所有OUTLINE的依赖表均存在。可通过查询DBA_OUTLINES视图确认所有OUTLINE对应的SQL语句,然后进一步确认语句中涉及的表是否存在。若某个OUTLINE的依赖表不存在则需先删除该OUTLINE再执行扩容操作,否则会报错。
需确保所有外部表的依赖DIRECTORY均存在。可通过查询DBA_EXTERNAL_LOCATIONS视图确认所有外部表对应DIRECTORY_NAME的DIRECTORY都存在。若某个外部表的依赖DIRECTORY不存在则需先删除该外部表再执行扩容操作,否则会报错。

