为MySQL表格添加联合索引

目前接手的这个系统,和数据库操作有着紧密的关系,甚至每一步的动作都在操作数据库。该数据库不但担负着前台500WPV的重任,同事后台还有很多管理回复人员在进行各种回复、配置、查询和统计等操作。可以说数据库是比较繁忙的。

 

经历了上几次webserver和数据库性能压力调整后,觉得自己在数据库编程上有着很大的缺点:

     1》谨慎添加索引,谨慎组合SQL语句的where条件,尽可能少建索引,尽可能使得where使用到目前已有的数据库索引。

     2》使用数据库平台的特性。数据库很多种,MySQL、oracel等等,各有各的特点,尽可能使用这些数据库的特点,高效简介地完成系统各项任务。

 

 

 

 

  • 索引优化

索引优化的基本原则: 
        1.将索引和数据存放到不同的文件组 
        没有将表数据和索引数据存储到不同的文件组,而不加区别地将它们存储到同一文件组。这样,不但会造成i/o竞争,也为数据库的维护工作带来不变。

        2.组合索引的使用 
        如果建立联合索引的话,比如说对t1、t2、t3建立联合索引(create index f_map on t_map(t1,t2,t3)),那也就是说同时也对建立了索引。在使用联合索引时一定要注意字段的个数和顺序。

        3.唯一索引与非唯一索引的差异 
        4.非聚集索引的作用 
        5.是不是使用非聚集索引的查询都需要进行聚集的查询? 
        6.创建索引的规则

你可能感兴趣的:(MySQL数据库,mysql,数据库,优化,存储,任务,编程)