达梦数据库性能优化
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4 数据库优化误区

在进行数据库优化时可能会存在以下误区。

• 误认为在优化之前一定要深入了解数据库内部原理优化的“套路”,依照这些“套路”可以很好地完成数据库优化。优化不是固定不变的理论方法,而是基于深厚的理论基础,进行丰富实践的理解和总结,理论和实践缺一不可。事实上,很多行业中都存在优化,优化不是一个入门级的技术,它是一种熟能生巧、活学活用的技能,因此,对于一个初学者来说,应该打好基础,不断实践,在实践中不断总结,当经验积累到一定程度时,就能解决一些性能方面的问题。不可否认,优化也有一定的技巧和规律可循,但需要一定基础才能领会和掌握。

• 误认为调整数据库参数就可以最终实现优化。在对参数进行调整前,DBA应该深刻理解配置参数中每个参数的含义和对系统的影响,避免由于错误的调整导致影响整个系统对外提供正常服务。对于一些关键业务,在实际调整前,建议在测试系统上先进行试验,验证通过后再在生产系统上进行调整。

• 误认为调整操作系统参数就可以最终实现优化。调整系统参数是非常重要的,但不一定能解决性能问题。很多运维人员和系统架构师认为对操作系统文件句柄数、CPU、内存、磁盘子系统等进行了优化,就能提升整个应用系统的性能,其实不然。有些场景下,针对业务特点和应用类型调整操作系统参数能取得立竿见影的效果,但是大多数情况下提升并不明显。因此,要实现优化,最关键的还是要找出瓶颈所在,对症下药。

• 误认为数据库性能由应用、数据库架构决定,与应用开发关系不大。而实际上,数据库性能与应用开发的关系很大。数据库性能与各个层面都有关,整体架构很重要,但应用开发也是非常重要的一环。

• 误认为必须要建立分库分表。关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有限。由于查询维度较多,即使添加从库、优化索引,但在做很多操作时数据库性能仍下降严重。此时就要考虑对其进行切分,切分的目的是减少数据库的负担,缩短查询时间。但是带来的负面影响包括事务一致性问题,跨节点关联查询问题,跨节点分页、排序、函数问题,以及数据迁移、扩容问题。