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

    数据库的优化主要从4个方面来考量:

    1,数据库设计

    2,sql语句优化

    3,数据库参数配置

    4,恰当的硬件资源和操作系统

    这个顺序也表现了这4个工作对性能的影响

    1,数据库的概念怎么算合理呢?

    答:要符合3NF 3范式(3个规范的模式,最高级别到6范式)有时,我们需要适当的逆范式。

    2,sql语句的优化 

    3,数据库的配置

    4,适当的硬件配置,和操作系统。

    数据库的3范式问题:

    1范式是对属性原子性的约束,要求原子性就是不可再分解。

    只要是关系型数据库,就自动符合一范式了。

    2范式,是对记录的唯一性约束,要求有唯一标识,即是实体的唯一性。

    一般说,我们在表中设计一个主键即可。

    3,在满足2范式的时候再要求是否符合3范式。

    是对冗余性的约束。

    字段信息可以根据关联的关系派生出来就可以了。

    通常是通过外键的方式来处理。

    但是有时候,为了开发提高运行的效率,可以降低范式标准。

    冗余1->多的时候,应该尽量把冗余字段放在1的那边。

    sql优化的一般步骤

    1,通过show status命令了解各种sql的执行效率。

    2,定位执行效率较低的sql语句,(重点select)

    3,通过explain分析效率低的sql语句执行情况

    4,确定问题并且采用相应的优化措施

    面试题:sql语句有几类?

    dd(数据定义语言) create alter drop

    dml语句(数据操作语言)insert update select

    Select 语句

    Dtl 语句,数据事物语言 commit  rollback  save point

    Dcl 语句 数据控制语句 grant revoke 

    show status; 这里面就是mysql一些状态,尤其以com打头的一些命令。

    show status like ‘com%’;

    等价于 show status session like’com%’;//显示控制台

    show status global like ‘com%’;显示数据库从启动到查询

    重点关心com_select    com_insert com_update com_delect

     说明从数据库启动,到现在进行过4次查询操作。

    Connections :试图链接mysql 服务器的次数

    Uptime:服务器工作的时间/秒数。

    Show_queries:慢查询的次数,默认0

    Show status like ‘Connections’;

    Mysql 运行半年需要重启一下。 

    链接3次。

    如果这个次数很大的话,就需要考虑并发的问题了。

    Show status like ‘updatetime’; 

     显示mysql启

    动的秒数 

    默认链接10秒中就会有一个慢查询。

    show status like ‘slow_queries’;

    mysql> show status like 'slow_queries';

    +---------------+-------+

    | Variable_name | Value |

    +---------------+-------+

    | Slow_queries  | 0     |

    +---------------+-------+

    1 row in set (0.00 sec)

    mysql> 

  • 相关阅读:
    【CCPC2020网络赛11】Convolution
    【CCPC2020网络赛02】Graph Theory Class
    全国中学生网安竞赛出题总结
    XDU2020ACM校赛总结
    CTF错误集合
    【洛谷2916】图的遍历
    20200420(ABC)题解 by 辛晓东
    20200402(ABC)题解 by 孙晨曦
    20200406(ABC)题解 by 徐光旭
    20200407(DE)题解 by 孙晨曦
  • 原文地址:https://www.cnblogs.com/ayanboke/p/10981669.html
Copyright © 2011-2022 走看看