zoukankan      html  css  js  c++  java
  • mysql 案例 ~ 瘦身mysql系列(1)

    一 简介:这一系列我们要进行如何瘦身mysql

    二 目的:通过提高CPU利用率和节约成本,降低数据库容量及I/O负载,从而使数据吞吐率得到显著提高

    三 方法: 

          利用innodb的COMPRESSED

    四 如何开启

      第一,mysql的版本需要大于5.5,mysql系统表是无法进行压缩的 
      第二,设置innodb_file_format=barracuda 
      第三,create table或者alter talble 增加 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;(默认的key_block_size=16)

    五 对于现有的表如何进行转化压缩

         alter table test KEY_BLOCK_SIZE=8; 默认是16,数值越小压缩率越高,但是解压所消耗的资源率越高

    六 目标:

         1 针对 数据短时间用不到而且需要保留的大表,可以进行压缩和处理->冷表

         2 针对 只有单一insert和select业务的大表,考虑进行压缩和处理

         3 针对 频繁业务的大表,不推荐进行压缩处理,可能会影响并发

    七  相关参数      

    innodb_compression_level:决定压缩程度的参数 如果你设置比较大,那么压缩比较多,耗费的CPU资源也较多;相反,如果设置较小的值,那么CPU占用少。默认值6,可以设置0-9
    innodb_compression_failure_threshold_pct:默认值5,范围0到100.设置中断点避免高昂的压缩失败率。
    innodb_compression_pad_pct_max:指定在每个压缩页面可以作为空闲空间的最大比例,该参数仅仅应用在设置了innodb_compression_failure_threshold_pct不为零情况下,并且压缩失败率通过了中断点。默认值50,可以设置范围是0到75.

    八 注意事项

        1 5.6 默认是不支持压缩的 最好在配置文件和全局变量都添加 innodb_file_format=barracuda 

        2 Barracuda兼容Antelope格式,所以不必担心修改后会引起以前的表相关问题

       3 修改完后show create table 会发现出现一行KEY_BLOCK_SIZE

       4 压缩效果并非对所有表都很明显,需要注意,关于blob varchar大于255 TEXT等大字段类型压缩能力很差

         

  • 相关阅读:
    LODOP、C-LODOP注册号的区别
    Lodop强制分页LODOP.NewPage()和LODOP.NewPageA()
    c-lodop云打印实现手机打印 JS语句打印
    如何取消浏览器护眼色 Lodop打印图片有窗口颜色的边框
    PS中如何提高修改psd图片的效率(自动选择工具)
    Lodop如何打印直线
    Lodop打印控件 如何打印虚线
    Lodop窗口的按钮、权限,隐藏或设置功能不可用
    ArrayList与LinkedList区别
    URLDecoder与URLEncoder
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/9661838.html
Copyright © 2011-2022 走看看