
数据库
文章平均质量分 93
码农印象
修炼的过程中,最好有人和你并肩而行,共同成长!努力做一个文邹邹的工具人,你做得越多,你知道的越多......
展开
-
我把问烂了的⭐MySQL⭐面试题总结了一下
连接池基本原理数据库连接池原理在内部对象池中,维护一定数量的数据库连接,并对外暴露数据库连接的获取和返回方法。内连接(innerjoin)取得两张表中满足存在连接匹配关系的记录。外连接(outerjoin)取得两张表中满足存在连接匹配关系的记录,以及某张表(或两张表)中不满足匹配关系的记录。交叉连接(crossjoin)显示两张表所有记录一一对应,没有匹配关系进行筛选,也被称为笛卡尔积。死锁是指两个或多个事务在同一资源上相互占用,并请求锁定对方的资源,从而导致恶性循环的现象。...原创 2022-07-29 14:42:03 · 807 阅读 · 0 评论 -
五个维度着手MySQL的优化
举例给name字段建索引,查询的时候,只用到了索引的字段,这就是索引覆盖。也就是直接通过查询索引,拿出来的数据就已经满足了查询返回的字段数据。无需额外其他查询操作了,也就是索引覆盖了。这样肯定快。如果初衷是查name,结果写成了select*,变成查多了其他字段,那其他字段不是索引,肯定无法触发索引覆盖使用场景了,也就是需要额外的回表查询操作了,那这样就慢了。ps对回表不了解的,可以看看这篇先MySql索引失效、回表解析_小目标青年的博客。...原创 2022-07-29 14:39:01 · 494 阅读 · 0 评论 -
以后面试官问你 为啥不建议使用Select *,请你大声回答他!
举例给name字段建索引,查询的时候,只用到了索引的字段,这就是索引覆盖。也就是直接通过查询索引,拿出来的数据就已经满足了查询返回的字段数据。无需额外其他查询操作了,也就是索引覆盖了。这样肯定快。如果初衷是查name,结果写成了select*,变成查多了其他字段,那其他字段不是索引,肯定无法触发索引覆盖使用场景了,也就是需要额外的回表查询操作了,那这样就慢了。ps对回表不了解的,可以看看这篇先MySql索引失效、回表解析_小目标青年的博客。...原创 2022-07-29 14:37:50 · 424 阅读 · 0 评论 -
为什么要分库分表?
上面主要从垂直和水平,两个方向介绍了我们的系统为什么要分库分表。说实话垂直方向(即业务方向)更简单。在水平方向(即数据方向)上,分库和分表的作用,其实是有区别的,不能混为一谈。分库是为了解决数据库连接资源不足问题,和磁盘IO的性能瓶颈问题。分表是为了解决单表数据量太大,sql语句查询数据时,即使走了索引也非常耗时问题。此外还可以解决消耗cpu资源问题。分库分表可以解决数据库连接资源不足、磁盘IO的性能瓶颈、检索数据耗时和消耗cpu资源等问题。分库分表的具体实现方案有哪些?...原创 2022-07-29 14:37:01 · 834 阅读 · 0 评论 -
MySQL 23道经典面试吊打面试官
回表就是先通过数据库索引扫描出该索引树中数据所在的行,取到主键id,再通过主键id取出主键索引数中的数据,即基于非主键索引的查询需要多扫描一棵索引树.事务是指是程序中一系列操作必须全部成功完成,有一个失败则全部失败。特性「1.原子性(Atomicity)」要么全部执行成功,要么全部不执行。「2.一致性(Consistency)」事务前后数据的完整性必须保持一致。「3.隔离性(Isolation)」隔离性是当多个事务同事触发时,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。...原创 2022-07-29 14:35:13 · 321 阅读 · 0 评论 -
【MySQL】第一范式、第二范式、第三范式、部分函数依赖、传递函数依赖、完全函数依赖等
要讲清楚范式,就先讲讲几个名词的含义吧:在理解函数依赖之前,先来看一下函数依赖分析:在关系中,包括在任何候选码中的属性称为主属性;不包括在任何候选码中的属性称为非主属性。函数依赖只分析关系中的非主属性对主属性之间的依赖关系,并不分析主属性对主键(码)的依赖关系。具体关于部分函数依赖和完全函数依赖的定义,网上有很多,但大多都是概念,这里我从例子入手来分析,使大家更好的掌握部分函数依赖、完全函数依赖和传递函数依赖。假定存在关系:R(学号,姓名,性别,班级,班主任,课程号,课程名,学时数,成绩)原创 2021-11-16 13:28:51 · 7370 阅读 · 0 评论 -
【MYSQL】从零基础到快速入门(2)
前言一.MYSQL的数据类型1.数据类型分类2.数值类型2.1 BIT的使用2.2 整型类型的使用2.3 UNSINGED的使用2.4 小数类型的使用3. 字符串3.1 char和varchar3.2 日期和时间类型3.3 枚举和set类型二.表的约束1.空属性1.1 空属性概念1.2 空属性约束的应用2.默认值3.列描述4.zerofill(0填充)5.主键约束5.1 单个字段的主键5.2 多个字段的主键(复合主键)5.3 主键约束5.4 删除主键6.自增长6.1 自增长概念6.2 自增长的特点7.唯一键原创 2020-08-08 00:11:50 · 296 阅读 · 0 评论 -
【MYSQL】从零基础到快速入门(1)
前言一、MySQL数据库基础1.为什么要存在数据库2.目前主流的数据库3.MTSQL的基本使用3.1 MYSQL的安装3.2 MYSQL的启动和关闭3.3 连接到MYSQL3.4 数据库服务器、数据库和表的关系3.5 创建库和表3.6 SQL分类二、库的操作1.创建数据库1.1 字符集和校验规则2.操纵数据库2.1 查看现在存在哪些数据库2.2 显示数据库创建语句2.3 删除数据库2.4 查看当前MySQL数据库的连接情况2.5 备份和恢复数据库2.6 修改库三、表的操作1.创建表2. 修改表3. 修改表结原创 2020-08-07 23:26:25 · 327 阅读 · 0 评论 -
【MySQL】学习中领悟的MySQL调优策略
MySQL 数据库的使用是非常的广泛,稳定性和安全性也非常好,经历了无数大小公司的验证。仅能够安装使用是远远不够的,MySQL 在使用中需要进行不断的调整参数或优化设置,才能够发挥 MySQL 的最大作用。MySQL 的优化可以从个方面来做:1、缓存。缓存是解决这类问题的一把手。它既可以加快整个系统(并非数据库系统,使用缓存的时候并没有去访问数据库)的访问速度,也可以减少数据库负载的压力。而缓存...原创 2019-10-08 21:00:15 · 240 阅读 · 0 评论 -
【数据库】 B+树、B*树及MySQL的两种引擎
前言本篇博客继承前面B-树,对B-树的变种B+/B*树展开分析,以及MySQL数据库的两个引擎MyISAM与InnoDB作以阐述,文中引入了部分网上资料。B+Tree的定义与特性B+树作为B-树的一个变种,也是一种多路搜索树。其定义基本与B-树没有区别,除了以下几点:1)非叶子结点的子树指针域关键字个数相同。2)非叶子结点的子树指针P[i],指向关键字属于([K[i],K[i+1]])的...原创 2019-03-23 02:55:03 · 1085 阅读 · 0 评论