zoukankan      html  css  js  c++  java
  • mysql 优化大致方向

    1:从SQL以及索引方向(最基本的的)

     具体操作,可以借助mysql自带的的工具mysqldumpslow,也可以借助第三方工具pt-query-digest这个更仔细些

    第二:从表结构方向

    具体操作:a是表字段的选取(能存在内容的时候尽量选取小的字段,占更小的空间) ,a是否遵循第三范式,b是垂直方向切分(大字段不合理,放到一个表里面),水平方向切分(数据量比较大),问题就是在统计的时候联合查询问题,根据具体的业务,分前台和后台的,前天查询的时候提高速度,查询切分表里面的数据,后来统计报表的时候查询没有切分的表数据

    第三:从操作系统防线

    例如32位操作系统,64位操作系统,对每个文件最大限制不一样,32位操作系统好像是最大2G,而64位无限制,还有如防火墙等等

    第四:对mysql数据库参数的的配置,例如对缓冲池大小的设置,以及缓冲池多久刷新到磁盘配置,等等

    以上就是从mysql性能优化入手方式,个人理解

    第五:扩展硬件,扩展cup,内存,简单粗暴的做法,但是就是成本最高,效果不是最明显的方式

    mysqldumpslow用具用法

    1:

    慢查询日志,顾名思义就是记录执行比较慢查询的日志。

    查看是否开启慢查询日志:

    show variables like '%slow%';

    打开慢查询日志。修改MySQL的配置文件my.cn一般是在/etc目录下面,加上下面三行配置后重启MySQL。

    slow_query_log = ON
    slow_launch_time = 2
    slow_query_log_file = /usr/local/mysql/data/slow_query.log

    tail -f localhost-slow.log

    利用mysql自带的工具:mysqldumpslow -t 3 /var/lib/mysql/localhost-slow.log  | more #前三条

  • 相关阅读:
    [二叉查找树] 1115. Counting Nodes in a BST (30)
    [最小生成树] 继续畅通工程
    [最小生成树] 畅通工程
    [最小生成树] 还是畅通工程
    [图算法] 1030. Travel Plan (30)
    [图算法] 1003. Emergency (25)
    [并查集] More is Better
    [并查集] How Many Tables
    [并查集] 畅通工程
    [并查集] 通信系统
  • 原文地址:https://www.cnblogs.com/working/p/5618284.html
Copyright © 2011-2022 走看看