数据库
WithScores
好好生活-_-
展开
-
Mysql多表的高级查询和事务安全
多表的高级查询和事务安全1.1笛卡尔积### 功能 两张表的所有的字段进行了组合,这种现象称为笛卡尔积(又称为交叉连接) ### 语法 select * from 左表,右表当要查询的表来自两张或者两张以上的表的时候就会出现笛卡尔积现象解决笛卡尔积的现象有两种办法,使用内连接和外连接,在两张表连接的时候进行限制符合连接条件的进行筛选1.2 内连接### 功能 那左表去匹配右边,符合连接条件的就留下,(是两个表的交集) 内连接不考虑连接的左右顺序 * 语法: 1. 显示内原创 2020-07-19 16:48:21 · 194 阅读 · 0 评论 -
sql语句的优化
sql语句的优化1. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2. 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=03.原创 2020-07-19 16:46:22 · 126 阅读 · 0 评论 -
Mysql的行级锁和表级锁
Mysql的行级锁和表级锁# 锁可以用于确保事务的完整性和数据库的一致性. 可以防止用户读取其他用户正在整改的数据 (----->脏读 ) 可以防止多贵用户同时更改相同的数据( ------> 和不可重复读的意思差不多) * 按照锁的粒度将数据库的锁分为 行级锁 (InnoDB引擎) 表级锁 (MYISAM引擎) 页级锁 (DBD引擎)# 行级锁: 行级锁是mysql中锁定粒度最细的一种锁,表示只对当前的操作行进行加锁 * 特点: 1. 行级锁能够减少对数原创 2020-07-19 16:45:32 · 313 阅读 · 0 评论 -
Mysql的存储引擎
Mysql的存储引擎# 为什么要合理的选用存储引擎* MySQL中的数据用各种不同的技术存储在文件(或者内存)中。 这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。 # 定义: 数据库引擎是用于存储、处理和保护数据的核心服务。利用数据库引擎可控制访问权限并快速处理事务,从而满足企业内大多数需要处理大量数据的应用程序的要求。# 存储引擎的作用: 1. 设计原创 2020-07-19 14:56:39 · 117 阅读 · 0 评论 -
Mysql的行级锁和表级锁
行级锁:行级锁是mysql中锁定粒度最细的一种锁,表示只对当前的操作行进行加锁特点:行级锁能够减少对数据库的冲突锁定的粒度最小(就是加锁的东西更小)加锁慢,开销大 (因为涉及到每一行 ,所以加锁慢,开销大)并发最高行级锁分为:共享锁排他锁行级锁是基于索引的,如果sql语句中没有索引的话,是不会用到行级锁的,还是会使用表级锁的在mysql中,行级锁并不是直接的锁记录,而是锁的是索引索引分为主键索引和非主键索引如果一条sql语句操作了主键索引,那么mysql就会锁定这原创 2020-07-19 14:55:01 · 173 阅读 · 0 评论 -
sql语句最详细的执行流程
sql语句的执行流程基本架构图基本概念# 大体的来说,MySQL可以分为Server层和存储引擎两部分Server层* Server层包含连接器,查询缓存,分析器,优化器,执行器等, 涵盖了MySQL的大多数的核心服务功能,以及所有的内置函数(如日期,时间,数学,和加密函数等) 所有的跨存储引擎的功能都在这一层实现,比如存储过程,触发器,试图等存储引擎* 存储引擎层负责数据的存储和提取。 其架构是插件式的,支持InnoDB,MyISAM,Memory等多个存储引擎,现在原创 2020-05-12 10:01:20 · 1674 阅读 · 0 评论 -
吐血整理Redis
Redis1. 互联网行业的特点:# 互联网行业的特点: 1. 高并发 同时的访问量过大2. 高可用 网站什么时候都可以访问3. 海量数据 动态的数据很大,比如qq的用户 * 传统的数据库 比如关系型数据库: mysql 是扛不住的,mysql能够支持的最大的并发量为2000左右,所有无法来面对高并发等高要求了* 非关系型数据库是为了配合关系型数据库来解决互联网...原创 2019-12-01 11:34:34 · 370 阅读 · 0 评论