1  优化表数据类型   

 

    procedure  analyse() 函数分析表字段

 

MySQL 之 优化数据库对象

 

 

2  通过拆分表,提高表的访问率,横向拆分,纵向拆分

 

         纵向拆分: 拆分是只按照应用访问的频度, 将表中经常访问的字段和不经常访问的字段拆分成两个
表,经常访问的字段尽量是定长的,这样可以有效的提高表的查询和更新的效率

      横向拆分:横向拆分是只按照应用访问的频度, 将表中经常访问的字段和不经常访问的字段拆分成两个
表,经常访问的字段尽量是定长的,这样可以有效的提高表的查询和更新的效率
 

 

3  逆规范化,冗余关键字段

    书据库德规范化设计强调数据的独立性,数据应该尽可能少地冗余,因为存在过多的冗余数据,这就意味着要占用了更多的物理空间,同时也对数据的维护和一致性检查带来了问题。
但是对于查询操作很多的应用,一次查询可能需要访问多表进行,如果通过冗余纪录在相同表中,更新的代价增加不多,但是查询操作效率可以有明显提高,这种情况就可以考虑通过冗余数据来提高效率

 

4 使用冗余统计表

 用create temporary table语法,它是基于session的表,表的数据保存在内存里面,当session断掉后,表自然消除。
对于大表的统计分析,如果统计的数据量不大,利用insert。 。 。 select将数据移到临时表中比直接在大表上做统计要效率更高。
 

 

5 选择更合适的表 引擎

 

1 如果应用出现比较严重的锁冲突,请考虑是否更改存储引擎到innodb,行锁机制可以有效的减少锁冲突的出现。
2、如果应用查询操作很多,且对事务完整性要求不严格,则可以考虑使用Myisam存储引擎。

 

相关文章:

  • 2021-08-31
  • 2022-12-23
  • 2021-11-05
  • 2022-01-18
  • 2021-08-18
  • 2021-12-12
  • 2021-12-22
  • 2021-11-19
猜你喜欢
  • 2021-10-20
  • 2022-02-19
  • 2022-02-17
  • 2021-09-06
  • 2021-07-26
  • 2021-12-10
相关资源
相似解决方案