mysql调优--01

 一、mysql架构

  首先客户端请求回到mysqlServer。mysqlServer中有连接器,分析器,优化器,执行器。然后到存储引擎

    

 二、性能监控:可以通过show profile和performance_schema进行性能监控

1、set profilling=1   sql语句执行    show profiles可以看到执行的耗时  show profile可以看到sql的执行过程耗时。

      

     在mysql官网可以查询文档看到:

      

     在这里我们可以清晰看到每个type的运行过程。show  profile type(CPU),也可以看到多个sql的执行过程。也可以通过show profile fro query 2;查看第二条seq的执行过程。

    

    

  2、performance_schema默认是开启的。能对数据库的性能做完整的监控。通过show processlis可以查看链接个数。 通过服务sql语句后加\G 可以有规律的查看返回数据。

 三、schema与数据类型的优化

  1、更小的通常更好(应该尽量使用可以正确存储数据的最小数据类型,更小的数据类型通常更快)

  2、应用简单数据类型存储

    (1)整型比字符操作代价更低,因为字符集和校对规则是字符比较比整型比较更复杂,

    (2)使用mysql自建类型而不是字符串来存储日期和时间

    (3)用整型存储IP地址。如下图:通过该函数存储ip地址。占用较小的存储空间。

        

  3、尽量避免使用null 在数据空中null=null吗?不等于。可以用  ' '。

  4、实例: varchar与char 区别: char适合存储长度变化不大的,如Md5摘要。char可以把存储的空格去掉。char可以存储短字符串经常更新的字符串。

  5、mysql可以设置enum数据类型来代替数据字典。底层占用很小的内存空间。

  6、特殊类型的转换。ip用整形代替。

  7、日期类型:date timastamp  datetime区别:

    

 

 

 

详见xmind文件:

 

  

posted @ 2022-02-15 14:55  Jerry&Ming  阅读(40)  评论(0)    收藏  举报