百万级别以上的数据如何删除?
这么大量的DELETE操作可能会导致长时间锁表
可以进行批量删除,把要删除的数据分为多个小批次处理。
也可以采用创建新表,把不需要删除的数据迁移过来,然后废弃旧表。需要检查新表空间是否足够、分批导入数据、验证数据一致性等步骤。
千万级大表如何添加新字段?
ALTER TABLE在低版本的MySQL中可能会导致长时间锁表,对于MySQL8.0+的版本,加入了INSTAN算法,使用ALTER TABLE不会长时间锁表了。
MySQL导致CPU飙升如何处理呢?
首先使用top命令查看是否是MySQL占用。
然后通过慢查询日志查看是否有耗时的SQL,然后通过EXPLAIN命令查看执行计划,查看是否命中索引,是否有临时表和排序。
最后通过SQL优化,比如添加索引、分批操作等手段