云数据仓库ADB ALTER TABLE修改列需要在低峰期执行吗,会不会锁表?
在使用ALTER TABLE语句对ADB MySQL数据库中的表进行修改时,是否需要在业务低峰期执行以及是否会锁表,主要取决于具体的ALTER TABLE操作类型:
删除索引后索引数据量未变:针对这种情况,建议在业务低峰期执行BUILD TABLE your_tablename命令,以确保重建操作对线上业务影响最小。虽然该操作本身不会锁表,但可能对查询性能有一定影响,因此选择业务低峰期执行更为合适。
给表添加列:在ADB MySQL中,给表添加列的操作基本是瞬时完成的,不会导致锁表现象,因此无需特意安排在业务低峰期执行。
综上所述,对于ALTER TABLE的具体操作类型——删除索引后的重建操作建议在业务低峰期执行以减少潜在的查询性能影响,而添加列的操作由于其瞬时且无锁表特性,无需特意安排在低峰期执行。
此回答整理自钉群“云数据仓库ADB-开发者群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云自主研发的云原生数据仓库,具有高并发读写、低峰谷读写、弹性扩展、安全可靠等特性,可支持PB级别数据存储,可广泛应用于BI、机器学习、实时分析、数据挖掘等场景。包含AnalyticDB MySQL版、AnalyticDB PostgreSQL 版。