数据库
拿了桔子跑啊1
美人鱼的眼泪是一个连伤心都透明的世界
展开
-
redis使用大概问题链
突发性热点缓存重建导致系统压力暴增(例如:冷门商品321上连接大量请求到缓存没有查到,同时去查数据库,又同时设置缓存(缓存重建))–设置、更新 缓存数据时,也去加分布式锁(设置说明肯定是查询了没有才设置哦,所以这个就是让查询和更新串行了)有个数据数据库也被干掉了,大量请求过来后,穿透缓存和数据库(缓存穿透巧记:缓存和数据库都被穿‘透’了)大量数据同时设置缓存,那么会同时失效,此时会击穿数据库 (缓存击穿(巧记:只打穿了缓存))–重建缓存时加锁(但是锁中要先查一遍缓存,DCL机制)缓存没有过期时间资源耗尽。原创 2023-03-20 09:51:07 · 180 阅读 · 0 评论 -
mysql相关-再总结
索引是是什么?索引是一种特殊的文件,在mysql-data下面有frm(表结构)、myd(表数据)、myi(表索引)几个文件,这个特殊的文件存储了对应表行数据的引用,通过这个引用可以快速的检索到想要的行数据,但是也需要系统给他开辟一定的存储空间去存储这个结构,当表数据进行更新时,也需要去维护这个索引结构,所以说索引并不是创建的越多越好,但是当数据量大,且对于那种查询多更新少的表数据,使用索引就能大大的提高查询性能。之所以有这么高得性能是因为其底层数据结构的特殊性。我知道的索引结构有btree、b+tree原创 2020-10-31 13:15:53 · 191 阅读 · 1 评论 -
MySQL锁问题
文章目录锁概述锁分类Mysql的锁MyISAM 表锁如何加表锁读锁案例写锁案例结论查看锁的争用情况InnoDB 行锁行锁介绍背景知识InnoDB 的行锁模式案例准备工作行锁基本演示无索引行锁升级为表锁间隙锁危害InnoDB 行锁争用情况总结锁概述锁是计算机协调多个进程或线程并发访问某一资源的机制(避免争抢)。在数据库中,除传统的计算资源(如 CPU、RAM、I/O 等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库原创 2020-06-27 21:41:49 · 170 阅读 · 0 评论 -
常用SQL技巧
SQL执行顺序编写顺序SELECT DISTINCT <select list>FROM <left_table> <join_type>JOIN <right_table> ON <join_condition>WHERE <where_condition>GROUP BY <group_by_list>HAVING <having_condition>ORDER BY <o原创 2020-06-27 21:19:50 · 107 阅读 · 0 评论 -
sql优化的具体方法
文章目录使用索引避免索引失效查看索引使用情况优化insert语句优化order by语句优化group by语句优化嵌套查询优化or语句优化分页查询方式1方式2使用SQL提示USE INDEXIGNORE INDEXFORCE INDEX使用索引索引是数据库优化最常用也是最重要的手段之一, 通过索引通常可以帮助用户解决大多数的MySQL的性能优化问题。create table `tb_seller` ( `sellerid` varchar (100), `name` varchar (100),原创 2020-06-27 16:57:06 · 1175 阅读 · 0 评论 -
sql优化相关概念,explain的使用说明
文章目录背景查看sql执行效率定位低效率执行SQLexplain分析执行计划explain 之 idexplain 之 select_typeexplain 之 tableexplain 之 typeexplain 之 keyexplain 之 rowsexplain 之 extrashow profile分析SQL背景在应用的的开发过程中,由于初期数据量小,开发人员写 SQL 语句时更重视功能上的实现,但是当应用系统正式上线后,随着生产数据量的急剧增长,很多 SQL 语句开始逐渐显露出性能问题,对生原创 2020-06-27 12:43:28 · 603 阅读 · 0 评论 -
MySQL存储引擎介绍
MySQL体系结构整个MySQL Server由以下组成连接层最上层是一些客户端和链接服务,包含本地sock 通信和大多数基于客户端/服务端工具实现的类似于 TCP/IP的通信。主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实现基于SSL的安全链接。服务器也会为安全接入的每个客户端验证它所具有的操作权限。服务层第二层架构主要完成大多数的核心服务功能,如SQL接口,并完成缓存的查询,SQL的分析和优化原创 2020-06-27 10:04:00 · 183 阅读 · 0 评论 -
事务、触发器、视图
DELIMITER该关键字用来声明SQL语句的分隔符 , 告诉 MySQL 解释器,该段命令是否已经结束了,mysql是否可以执行了。默认情况下,delimiter是分号;。在命令行客户端中,如果有一行命令以分号结束,那么回车后,mysql将会执行该命令。触发器介绍触发器是与表有关的数据库对象,指在 insert/update/delete 之前或之后,触发并执行触发器中定义的SQL语句集合。触发器的这种特性可以协助应用在数据库端确保数据的完整性 , 日志记录 , 数据校验等操作 。使用别名 OLD原创 2020-06-27 09:24:22 · 130 阅读 · 0 评论 -
MySQL中的索引
文章目录索引概述索引优势劣势索引结构BTREE 结构B+TREE 结构索引分类索引语法索引设计原则索引概述索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据, 这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。左边是数据表,一共有两列七条记录,最左边的是数据记录的物理地址(注意逻辑上相邻的记录在磁盘上也并不是一定物理相邻的)。为了加快Col2的查找,可以维护一个右边所示的二原创 2020-06-27 08:56:40 · 489 阅读 · 0 评论 -
select into&insert into select
触发器中的运用这是一个触发器的,达到的效果就是,当tywdeptcourse表添加数据时,根据表中部门ID,给该部门的所有员工选课课程表(tywstaffcourse)中添加该门课程。代码如下:DELIMITER $$CREATE TRIGGER trigger_tywdeptcourse_insert AFTER INSERT ON tywdeptcourse FOR EACH RO...原创 2020-02-28 23:12:23 · 567 阅读 · 0 评论 -
jdbc_mysql数据库连接并进行增删改查
jdbc数据库连接并进行增删改查1. 首先需要有一个数据库连接的jar包 mysql-connector-java-5.1.39-bin.jar 复制到创建的项目下 并点击Build Path -->Add To Build Path进行解压,就可进行使用2. 创建一个连接工具类DBUtil.java。(单例模式) ...原创 2019-09-15 14:26:29 · 540 阅读 · 6 评论 -
Mysql数据库基础语句总结
MYSQL数据库练习笔记一.准备操作 启动mysql服务器: net start mysql 关闭mysql服务器: net stop mysql 登陆客户端数据库: mysql -u用户名 -p密码二.DDL 删除数据库 drop 数据库名 使用...原创 2019-09-15 12:40:51 · 548 阅读 · 4 评论