【 使用环境 】生产环境 or 测试环境 生产环境
【 OB or 其他组件 】OceabBase_CE 4.2.1.2
【 使用版本 】OceabBase_CE 4.2.1.2
【问题描述】表有按照时间对表分区,且表的数据量很大。对该表增加字段的时候,报错Time Out。想咨询一下是否有优化方案,谢谢。
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
ddl性能慢均可以采用以下参数调优,字段增加完成建议还原参数。
参数值的大小建议按实际环境调整,如果生产环境建议不要一次性调太大,逐步翻倍方式进行调整。
SET SESSION_FORCE_PARALLEL_DDL_DOP = 32;
上述语句obclient报错,未知命令。搜索之后得到的语句为
SET SESSION _FORCE_PARALLEL_DDL_DOP = 32;
链接是:OceanBase分布式数据库-海量数据 笔笔算数
请问哪一句是对的
另外想问一下,您的建议是,增加完字段建议还原参数。
如果要完成这一步,是不是需要在设置参数之前,先select这几个参数原来的值。
另外就是,修改完参数之后,是否需要手动重启observer
是的 _FORCE_PARALLEL_DDL_DOP 这个参数
需要先查原参数值 _ 开头的是隐藏参数,可以通过以下sql查看
`SELECT * FROM oceanbase.__all_virtual_sys_parameter_stat WHERE name='_TEMPORARY_FILE_IO_AREA_SIZE';`
设置 SET SESSION 临时会话的隐藏参数 不用管,会话退出就结束了、
无需重启即可生效。
最下面的限流可以不用关闭,正常情况下影响不是很大。