MySQL
dh12313012
一个一心想混吃等死的做数据处理的懒胖子
展开
-
MySQL高级知识(八)——索引面试题分析
MySQL高级知识(八)——索引面试题分析准备事例分析总结此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看。准备创建test表(测试表)drop table if exists test;create table test(id int primary key auto_increment,c1 varchar(10),c2 varchar(10),c3 ...原创 2019-05-30 10:53:45 · 447 阅读 · 0 评论 -
MySQL高级知识(十七)——行锁
MySQL高级知识(十七)——行锁1. 特点2. 事务2.1. 事务主要是处理并发处理带来的问题。2.2. 事务隔离级别3. 案例分析3.1. 准备3.2. 行锁定基本演示3.3. 无索引行锁升级为表锁此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看。1. 特点行锁特点:偏向InnoDB存储引擎,开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率...原创 2019-06-02 23:24:46 · 476 阅读 · 0 评论 -
MySQL高级知识(十六)——表锁
MySQL高级知识(十六)——表锁1. 特点2. 案例分析2.1. 准备2.2. 表锁(read)案例2.3. 表锁(write)案例此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看。1. 特点表锁特点:偏向MyISAN存储引擎,开销小,加锁快;无死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低2. 案例分析2.1. 准备创建表SQLd...原创 2019-06-01 14:57:55 · 262 阅读 · 0 评论 -
MySQL高级知识(六)——索引分析
MySQL高级知识(六)——索引分析准备:1. left join2. right join3. 总结此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看。准备:首先创建三张表:emp(职工表)、dept(部门表)、conn(描述表)。emp表DROP TABLE IF EXISTS `emp`;CREATE TABLE `emp` ( `id` int(11)...原创 2019-05-29 15:32:23 · 521 阅读 · 0 评论 -
MySQL高级知识(五)——Explain
MySQL高级知识(五)——Explain1. Explain作用2. Explain包含的信息2.1. id2.2. select_type2.3. table2.4. partitions2.5. type2.6. possible_keys和key、key_len2.7. ref2.8. rows2.9. filtered2.10. extra3. 总结此博客的内容主要来源于尚硅谷的视频...原创 2019-05-29 14:42:29 · 348 阅读 · 0 评论 -
MySQL高级知识(十五)——MySQL锁机制分类
MySQL高级知识(十五)——MySQL锁机制分类1. 定义2. 事例3. 锁的分类3.1. 对数据操作的类型(读/写)分3.2. 对数据操作的细粒度分此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看。1. 定义锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除了传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的...原创 2019-05-31 15:07:41 · 235 阅读 · 0 评论 -
MySQL高级知识(四)——索引结构
MySQL高级知识(四)——索引结构1. B-Tree索引(即BTree)1.1. 原理图1.2. 关于时间复杂度2. B+Tree索引2.1. 原理图2.2. B+Tree优点2.3. B-Tree与B+Tree区别:3. 聚簇索引与非聚簇索引3.1. 聚簇索引含义3.2. 聚簇索引优缺点3.3. 非聚簇索引含义3.4. 区别3.5. 适用场景4. full-text全文索引4.1. 全文索引用...原创 2019-05-28 17:52:49 · 359 阅读 · 0 评论 -
MySQL高级知识(十四)——MySQL常见瓶颈
MySQL高级知识(十四)——MySQL常见瓶颈此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看。常见瓶颈:CPU:SQL中对大量数据进行比较、关联、排序、分组,消耗CPU。主要是比较I/O:实际内存满足不了缓存数据或排序等需要,导致大量物理I/O。查询执行效率低,扫描过多数据行。锁:不适宜的锁的设置,导致线程阻塞,性能下降。...原创 2019-05-31 10:59:49 · 396 阅读 · 0 评论 -
MySQL高级知识(十三)——全局查询日志
MySQL高级知识(十三)——全局查询日志1. 全局查询日志含义2. 如何开启2.1. 通过mysql的my.cnf配置开启该功能2.2. 通过命令开启该功能3. 总结此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看。1. 全局查询日志含义全局查询日志用于保存所有的sql执行记录,该功能主要用于测试环境,在生产环境中永远不要开启该功能,消耗资源。2. 如何开启2.1....原创 2019-05-31 10:35:49 · 730 阅读 · 0 评论 -
MySQL高级知识(十二)——Show Profile
MySQL高级知识(十二)——Show Profile1. Show Profile是什么2. 分析步骤2.1. 查看当前mysql版本是否支持2.2. 开启功能2.3. 运行sql2.4. 查看结果,show profiles2.5. 诊断sql2.6. show profile的常用参数2.7. 日常开发需要注意的点3. 总结此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看...原创 2019-05-31 09:20:32 · 548 阅读 · 0 评论 -
MySQL高级知识(三)——索引
MySQL高级知识(三)——索引1. 索引含义2. 索引优缺点2.1. 索引优点:2.2. 索引缺点:3. 索引分类3.1. 主键索引:3.2. 单值索引:3.3. 唯一索引:3.4. 复合索引:4. 基本语法5. 建立索引与否的具体情况5.1. 需建立索引的情况5.2. 不需要创建索引的情况此部分将着重将索引,因为索引在sql调优部分占据很重要的地位。1. 索引含义MySQL官方对索引的...原创 2019-05-28 14:02:17 · 432 阅读 · 0 评论 -
MySQL高级知识(十一)——批量插入数据脚本
MySQL高级知识(十一)——批量插入数据脚本1. 准备2. 创建函数,保证每条数据都不同2.1. 随机生成字符串2.2. 随机生成部门编号3. 创建存储过程用于批量插入数据3.1. 创建往emp表中插入数据的存储过程3.2. 创建往dept表中插入数据的存储过程4. 调用存储过程4.1. emp4.2. dept5. 删除函数与存储过程5.1. 删除函数5.2. 删除存储过程6. 总结此博客...原创 2019-05-30 22:28:52 · 535 阅读 · 0 评论 -
MySQL高级知识(十)——慢查询日志
MySQL高级知识(十)——慢查询日志1. 慢查询是什么2. 如何开启慢查询3. 慢查询相关参数3.1. 查看慢查询的阈值时间:3.2. 设置long_query_time的值:3.3. 记录慢查询sql的数码此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看。1. 慢查询是什么MySQL的慢查询日志是MySQL提供的一种日志记录,他用来记录在MySQL中响应时间啊你超...原创 2019-05-30 21:07:51 · 735 阅读 · 0 评论 -
MySQL高级知识(二)——join查询
MySQL高级知识(二)——join查询准备1. inner join2. left join3. right join4. A独有5. B独有6. AB全有(并集)7. A、B独有并集该篇目主要对MySQL中的join语句的七种情况进行总结。准备join主要根据两表或者多表之间的关系,从这些表中进行数据的查询。首先创建两张表,emp(员工表)和dept(部门表),并插入相关测试数据。...原创 2019-05-28 10:22:28 · 431 阅读 · 0 评论 -
MySQL高级知识(一)——基础
MySQL高级知识(一)——基础MySQL高级知识——基础1. MySQL概述2. MySQL高手必备3. MySQL的Linux版本安装(非重点)3.1. 下载地址3.2. 拷贝&解压缩3.3. 检查工作3.4. 安装3.5. 查看MySQL安装版本3.6. MySQL服务的启动+停止+查看状态3.7. 首次登录3.8. MySQL安装位置3.9. 自启动MySQL服务3.10. 修改字...原创 2019-05-27 22:29:58 · 642 阅读 · 0 评论 -
MySQL高级知识(九)——order by优化
MySQL高级知识(九)——order by优化准备案例总结此博客的内容主要来源于尚硅谷的视频中,在此记录,以备以后自己查看。准备创建test表drop table if exists test;create table test(id int primary key auto_increment,c1 varchar(10),c2 varchar(10),c3 varc...原创 2019-05-30 16:06:54 · 588 阅读 · 0 评论 -
MySQL高级知识(七)——索引优化准则
MySQL高级知识(七)——索引优化准则准备规则:1. 最佳左前缀原则1.1. 定义:1.2. 事例1.3. 总结2. 不要在索引列上面做任何的操作3. 范围右边全失效4. 尽量使用覆盖索引5. 使用不等于( !=或<>)会使索引失效6. is not null也无法使用索引7. like通配符以%开头会使索引失效8. 字符串不加单引号导致索引失效9. 少用or,用or连接会使索引失...原创 2019-05-29 19:49:34 · 445 阅读 · 0 评论