zoukankan      html  css  js  c++  java
  • mysql数据库之MyISAM与InnoDB

    看你的mysql现在提供了什么引擎,执行的命令:show engines;

     看你mysql当前默认的存储引擎,执行的命令:show variables like  ‘%storage_engines%’;

    MyISAMInnoDB的的区别:

    MyISAM

    1、不支持外键

    2、不支持事务

    3、支持表锁,即使操作一条记录也会锁住整个表,不适合高并发操作

    4、只支持缓存索引,不缓存真实数据

    5、关注点:节省资源、消耗少、简单的业务

     

    InnoDB

    1、支持外键

    2、支持事务

    2、支持行锁,操作时只锁某一行,不对其他行有影响,适合高并发操作。

    3不仅支持缓存索引,还缓存真实数据,对内存要求较高,而且内存的大小对性能有决定性影响

    3、关注点:并发写、事务、更大的资源

     

    复杂查询:

    #查询两张表:admin_group、admin_log

    SELECT * FROM admin_group g

    INNER JOIN admin_log  l

    ON g.`id`=l.`id`

     

     

    执行之后:

    索引:

    首先自己准备两张表,分别是:myschool、mystudent

     

     

     执行sql语句会出现:Empty set (0.00 sec)

    原因:

    其实就是提示你实体表为空,说的是你的数据库或表里数据为空,你添加上数据就可以了

    使用索引只需要在sql语句前面加explain 关键字即可!

    执行语句:Explain select * from myschool s inner join mystudent t on s.id=t.id;

     

    Explain 性能分析各字段:

    总结:

     id如果相同,可以认为是一组,从上往下顺序执行:

     在所有的组中,id值越大,优先级就越高,越先执行

  • 相关阅读:
    Oracle 的日期类型
    简单的同步Socket程序服务端
    MMORPG中的相机跟随算法
    使用了UnityEditor中的API,打包时却不能打包UnityEditor的问题
    C# 中的关键字整理
    Unity3D C#中使用LINQ查询(与 SQL的区别)
    C# 值类型与引用类型的异同
    Unity3D NGUI事件监听的综合管理
    Unity3D 动画状态机简单控制核心代码
    Unity3D判断触摸方向
  • 原文地址:https://www.cnblogs.com/studygithub5208868/p/11568014.html
Copyright © 2011-2022 走看看