zoukankan      html  css  js  c++  java
  • mysql 优化

    http://www.ttlsa.com/mysql/mysql-innodb-storage-engine-parameters-detailed-and-optimization/

    ql_cache意思是说,查询的时候使用缓存。

    sql_no_cache意思是查询的时候不适用缓存。

    sql_buffer_result意思是说,在查询语句中,将查询结果缓存到临时表中。

    这三者正好配套使用。sql_buffer_result将尽快释放表锁,这样其他sql就能够尽快执行。

    使用 --------------------------------------------------

    那么MySQL到底是怎么决定到底要不要把查询结果放到查询缓存中呢?

    是根据query_cache_type这个变量来决定的。

    这个变量有三个取值:0,1,2,分别代表了off、on、demand。

    意思是说,如果是0,那么query cache 是关闭的。如果是1,那么查询总是先到查询缓存中查找,除非使用了sql_no_cache。如果是2,那么,只有使用 sql_cache的查询,才会去查询缓存中查找

    --------------

    对于myisam引擎的表,可以使用optimize table tb_name来进行空间优化。

    对于innodb引擎,可使用下列方法:

    1、innodb 的optimize table 是映射到alter table的,做大innodb表优化前先drop掉所有的index,然后optimize 完了再rebuild index.速度要快很多。
    2、对于使用独立表空间的innodb表,表比较小的可以ALTER TABLE table_name ENGINE = Innodb;表比较大的话,新创建一个表,把数据倒进去然后drop原来表。

    -------------------------------------------------------------------------------------------------

    ENGINE = Innodb;
    这其实是一个NULL操作,表面上看什么也不做,实际上重新整理碎片了。当执行优化操作时,实际执行的是一个空的 ALTER 命令,但是这个命令也会起到优化的作用,它会重建整个表,删掉未使用的空白空间。

    OPTIMIZE 可以整理数据文件,并重排索引。【据说仅针对myisam有效】

  • 相关阅读:
    php数组转json 中文编码错乱解决
    fastadmin展示多个视频按钮
    fastadmin在json字段动态关联
    fastadmin放大镜改为“搜索”
    fastadmin行内手机验证规则
    fastadmin批量修改状态
    php手机、邮箱规则验证
    tp5 查询某个值是否在数据表某一个字段中 FIND_IN_SET
    css书写规范以及如何写出赏心悦目的代码
    html5中常见选择器
  • 原文地址:https://www.cnblogs.com/moss_tan_jun/p/6243845.html
Copyright © 2011-2022 走看看