count(1)、count(*)、count(列名)的区别

在平时开发,或者写sql过程中,没怎么注意过count(1)、count(*)、count(列名)的区别,本文,将结束一下这三者的区别。

大厂都是怎么调优的?

转载与大厂都是怎么SQL调优的? – 敖丙

MySQL索引详解

何为索引?有什么作用?索引是一种用于快速查询和检索数据的数据结构。常见的索引结构有: B 树, B+树和 Hash。 索引的作用就相当于目录的作用。打个比方: 我们在查字典的时候,如果没有目录,那我们就只能一页一页的去找我们需要查的那个字,速度很慢。如果有目录了,我们只需要先去目录里查找字的位置,然后直接翻到那一页就行了。 索引的优缺点优点 : 使用索引可以大大加快 数据的检索速度(...

MySQL之主从复制与读写分离

MySQL主从复制是其最重要的功能之一。主从复制是指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中。对于多级复制,数据库服务器即可充当主机,也可充当从机。MySQL主从复制的基础是主服务器对数据库修改记录二进制日志,从服务器通过主服务器的二进制日志自动执行更新。

数据库三大范式

三大范式简介 第一范式:第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项 第二范式:第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)。第二范式要求每一行都要有唯一标识存在,这个唯一属性列被称为主关键字或主键、主码。实体的属性完全依赖于主关键字。 第三范式:第三范式是在第二范式的基础上建立起来的。第三范式指:属性...

MySQL长连接、短连接、连接池

什么是短连接?短连接是指程序和数据库通信时需要建立连接,执行操作后,连接关闭。短连接简单来说就是每一次操作数据库,都要打开和关闭数据库连接,基本步骤是:连接 →数据传输 →关闭连接。 什么是长连接?长连接是指程序之间的连接在建立之后,就一直打开,被后续程序重用。使用长连接的初衷是减少连接的开销,尽管MySQL的连接比其他数据库要快得多。 以PHP程序为例,当收到一个永久连接的请求时,PH...

高并发之数据库分库分表

记录一些数据库分库分表问题…

MySQL一些规范以及优化问题

如何选择索引列的顺序?建立索引的目的是:希望通过索引进行数据查找,减少随机 IO,增加查询性能 ,索引能过滤出越少的数据,则从磁盘中读入的数据也就越少。 区分度最高的放在联合索引的最左侧(区分度=列中不同值的数量/列的总行数) 尽量把字段长度小的列放在联合索引的最左侧(因为字段长度越小,一页能存储的数据量越大,IO 性能也就越好) 使用最频繁的列放到联合索引的左侧(这样可以比较少的建...

InnoDB引擎 - 行记录存储 - Compact 行格式

待完善…

InnoDB崩溃恢复机制

概述数据库系统与文件系统大的区别在于数据库能保证操作的原子性,一个操作要么不做要么都做,即使在数据库宕机的情况下,也不会出现操作一半的情况,这个就需要数据库的日志和一套完善的崩溃恢复机制来保证。下面简单介绍一下InnoDB的崩溃恢复流程。 相关概念 lsn: 可以理解为数据库从创建以来产生的redo日志量,这个值越大,说明数据库的更新越多,也可以理解为更新的时刻。此外,每个数据页上也有一...