zoukankan      html  css  js  c++  java
  • MYSQL---关于MYSQL优化

    1. 慢查询,规定查询超过2秒的为慢查询(救火)
    1)mysql> show full processlist;

    2)用explain查看查询语句是否经过索引,如果没有就要建立索引
    long_query_time =2
     
    3)对需要建立索引的条件建立索引,大于300万的记录不能建立索引

     2. 日常记录文件

     

     [root@MySQL ~]# grep gene /data/3306/my.cnf
    general_log = on
    general_log_file = /data/3306/data/MySQL_oldboy.log 
     
     
     临时生效:
    mysql> set global general_log_file = "/data/3306/data/MySQL_oldboy.log";
    Query OK, 0 rows affected (0.04 sec)

    mysql> show variables like 'general_log%';
    +------------------+----------------------------------+
    | Variable_name    | Value                            |
    +------------------+----------------------------------+
    | general_log      | ON                               |
    | general_log_file | /data/3306/data/MySQL_oldboy.log |
    +------------------+----------------------------------+
    2 rows in set (0.00 sec)
    mysql> set global general_log = on; 
    Query OK, 0 rows affected (0.03 sec)
     
     
     [root@oldboy ~]# cat /data/3306/data/MySQL_oldboy.log
    /application/mysql-5.5.32/bin/mysqld, Version: 5.5.32-log (Source distribution). started with:
    Tcp port: 3306  Unix socket: /data/3306/mysql.sock
    Time                 Id Command    Argument
    160828 19:09:22    15 Query     show databases
    160828 19:09:25    15 Query     explain select * from test where state=1
    160828 19:09:28    15 Query     show full processlist
    160828 19:09:36    15 Query     select * from test
                       15 Query     select * from test
    160828 19:09:37    15 Query     select * from test
    160828 19:09:39    15 Quit 
     
     
     删除binlog日志方法
    1、设置参数自动删除
    expire_logs_days = 7  #<==删除7天前的日志
    2、从头删到指定的文件位置
    mysql> purge binary logs to 'mysql-bin.000004';
    Query OK, 0 rows affected (0.03 sec)
    mysql> system ls -l /data/3306/mysql-bin*
    -rw-rw---- 1 mysql mysql   126 8月  21 16:31 /data/3306/mysql-bin.000004
    -rw-rw---- 1 mysql mysql   126 8月  21 16:32 /data/3306/mysql-bin.000005
    -rw-rw---- 1 mysql mysql 15881 8月  28 19:16 /data/3306/mysql-bin.000006
    -rw-rw---- 1 mysql mysql    84 8月  28 19:26 /data/3306/mysql-bin.index
    3、按照时间删除
    mysql> PURGE MASTER LOGS BEFORE '2016-08-28 13:00:00';
    Query OK, 0 rows affected (0.02 sec)

    mysql> system ls -l /data/3306/mysql-bin*             
    -rw-rw---- 1 mysql mysql 15881 8月  28 19:16 /data/3306/mysql-bin.000006
    -rw-rw---- 1 mysql mysql    28 8月  28 19:28 /data/3306/mysql-bin.index 
     
     
     mysql> PURGE MASTER LOGS BEFORE DATE_SUB(NOW( ), INTERVAL 3 DAY);
    Query OK, 0 rows affected (0.00 sec)

    mysql> system ls -l /data/3306/mysql-bin*                        
    -rw-rw---- 1 mysql mysql 15881 8月  28 19:16 /data/3306/mysql-bin.000006
    -rw-rw---- 1 mysql mysql    28 8月  28 19:28 /data/3306/mysql-bin.index 
     
     
     
     1、硬件层面优化
    1.1 数据库物理机采购:
    1.2 服务器硬件配置调整
    1.2.1 服务器BIOS调整:
    1.2.2 阵列卡调整:
    2、软件层优化
    2.1 操作系统层面优化
    2.1.1 操作系统及MySQL实例选择
    2.1.2 文件系统层优化 
    2.1.3 linux内核参数优化 
    2.2 mysql数据库层面优化
    2.2.1 my.cnf参数优化
    2.2.2 关于库表的设计规范
    2.2.3 SQL语句的优化
    3、网站集群架构上的优化
    4、流程,制度,安全优化
  • 相关阅读:
    HDU 4832(DP+计数问题)
    mongodb安装与使用
    (hdu step 6.3.7)Cat vs. Dog(当施工方规则:建边当观众和其他观众最喜爱的东西冲突,求最大独立集)
    dba_dependencies查询结果视图
    情绪一点点
    c#基于这些,你已经看到了?(一)-----谁才刚刚开始学习使用
    九. 200创业教训万元获得--“神刻”这是忽悠?
    初步swift语言学习笔记6(ARC-自己主动引用计数,内存管理)
    采用CSS3 Media Query技术适应Android平板屏幕分辨率和屏幕像素密度
    线程的上下文
  • 原文地址:https://www.cnblogs.com/liuqiang0/p/8526647.html
Copyright © 2011-2022 走看看