获得徽章 2
#青训营笔记创作活动#
2月21日 打卡day16
今日学习
-基础操作与库命令、增删改查语句、MySQL数据库函数、MySQL支持的数据类型、索引相关的命令、事务与锁、存储过程、存储函数、触发器、MySQL用户与权限管理、MySQL视图与临时表等
2月21日 打卡day16
今日学习
-基础操作与库命令、增删改查语句、MySQL数据库函数、MySQL支持的数据类型、索引相关的命令、事务与锁、存储过程、存储函数、触发器、MySQL用户与权限管理、MySQL视图与临时表等
展开
评论
点赞
#青训营笔记创作活动#
2月20日 打卡day15
今日学习
-跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。
-解决跨域问题,只需要告诉浏览器这是一个安全的请求就行了,即在返回头中设置“Access-Control-Allow-Origin”参数就可以解决跨域问题,此参数用来表示允许跨域访问的原始域名的,当设置为“*”时,表示允许所有站点跨域访问。
2月20日 打卡day15
今日学习
-跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。
-解决跨域问题,只需要告诉浏览器这是一个安全的请求就行了,即在返回头中设置“Access-Control-Allow-Origin”参数就可以解决跨域问题,此参数用来表示允许跨域访问的原始域名的,当设置为“*”时,表示允许所有站点跨域访问。
展开
评论
点赞
#青训营笔记创作活动#
2月19日 打卡day14
今日学习
-为了挽救本地缓存越来越多导致系统响应速度变慢的问题,开发人员需要介入去分析性能瓶颈并尝试优化提升响应速度,并很快找到响应快的瓶颈在数据库的频繁操作,
2月19日 打卡day14
今日学习
-为了挽救本地缓存越来越多导致系统响应速度变慢的问题,开发人员需要介入去分析性能瓶颈并尝试优化提升响应速度,并很快找到响应快的瓶颈在数据库的频繁操作,
展开
评论
点赞
#青训营笔记创作活动#
2月18日 打卡day13
今日学习
-多线程技术能充分压榨CPU资源,同时也能提升程序的并发支持性。但也带来了线程安全问题。
-MySQL的锁机制与索引机制类似,由存储引擎负责。
2月18日 打卡day13
今日学习
-多线程技术能充分压榨CPU资源,同时也能提升程序的并发支持性。但也带来了线程安全问题。
-MySQL的锁机制与索引机制类似,由存储引擎负责。
展开
评论
点赞
#青训营笔记创作活动#
2月17日 打卡day12
今日学习
-因为局部性原理,所以需要建立索引避免全表扫描的开销过大。
-MySQl索引结构使用B+Tree结构,改善了B-Tree不适合于大范围查询操作的劣势,在B+Tree的最下面一排节点,存在一个单向指针,指向下一个节点所在位置。这样只需要定位第一个节点就能够确定所查范围的所有数据未知。
2月17日 打卡day12
今日学习
-因为局部性原理,所以需要建立索引避免全表扫描的开销过大。
-MySQl索引结构使用B+Tree结构,改善了B-Tree不适合于大范围查询操作的劣势,在B+Tree的最下面一排节点,存在一个单向指针,指向下一个节点所在位置。这样只需要定位第一个节点就能够确定所查范围的所有数据未知。
展开
评论
点赞
#青训营笔记创作活动#
2月16日 打卡day11
今日学习
-Redis是一个开源的、键值对型的数据存储系统。
-优点:Redis完全基于内存操作,性能极高,读写速度快,能够支持超过100KB/s的读写速率;支持高并发;支持主从模式;具有丰富的数据类型与特性;支持持久化操作,不会丢失操作。
-缺点:数据库容量受到物理内存的限制,不能实现海量数据的高性能读写。
2月16日 打卡day11
今日学习
-Redis是一个开源的、键值对型的数据存储系统。
-优点:Redis完全基于内存操作,性能极高,读写速度快,能够支持超过100KB/s的读写速率;支持高并发;支持主从模式;具有丰富的数据类型与特性;支持持久化操作,不会丢失操作。
-缺点:数据库容量受到物理内存的限制,不能实现海量数据的高性能读写。
展开
评论
1
#青训营笔记创作活动#
12月15日 打卡day10
今日学习
-建立数据库索引会带来优势也会带来劣势,劣势有如:建立索引会生成本地磁盘文件,需要额外的空间存储索引数据;写入数据时,需要额外维护索引结构;写入数据时维护索引需要额外的时间开销,执行写SQL时效率会降低,性能会下降。
-哈希索引致命问题在于无序,也就是无法基于哈希索引的字段做排序、分组等工作。如果确定表中,不会做排序这类工作,那就可以使用哈希索引。
12月15日 打卡day10
今日学习
-建立数据库索引会带来优势也会带来劣势,劣势有如:建立索引会生成本地磁盘文件,需要额外的空间存储索引数据;写入数据时,需要额外维护索引结构;写入数据时维护索引需要额外的时间开销,执行写SQL时效率会降低,性能会下降。
-哈希索引致命问题在于无序,也就是无法基于哈希索引的字段做排序、分组等工作。如果确定表中,不会做排序这类工作,那就可以使用哈希索引。
展开
评论
1
#青训营笔记创作活动#
2月14日 day9
今日学习
-MySQL索引在数据的一种,都会放到磁盘上存储,因此与表数据相同,最终创建出的索引也会在磁盘上生成本地文件。
-MySQL索引支持B+Tree、Hash、R-Tree、T-Tree等类型,索引结构有存储引擎决定,而MySQL引擎层属于可拔插式引擎。
-MySQL索引从逻辑上可以分为五种类型:普通索引、唯一索引、主键索引、全文索引、空间索引。(空间索引基于四种空间数据类型字段建立)
-MySQL索引从存储方式上分为聚簇索引、非聚簇索引。聚簇索引逻辑上连续且物理空间上连续;非聚簇索引逻辑上连续物理空间上不连续。
2月14日 day9
今日学习
-MySQL索引在数据的一种,都会放到磁盘上存储,因此与表数据相同,最终创建出的索引也会在磁盘上生成本地文件。
-MySQL索引支持B+Tree、Hash、R-Tree、T-Tree等类型,索引结构有存储引擎决定,而MySQL引擎层属于可拔插式引擎。
-MySQL索引从逻辑上可以分为五种类型:普通索引、唯一索引、主键索引、全文索引、空间索引。(空间索引基于四种空间数据类型字段建立)
-MySQL索引从存储方式上分为聚簇索引、非聚簇索引。聚簇索引逻辑上连续且物理空间上连续;非聚簇索引逻辑上连续物理空间上不连续。
展开
评论
1
#青训营笔记创作活动#
2月13日 day8
今日学习
-慢SQL优化思路:通过慢查询日志定位慢SQL,explain查看分析SQL的执行计划,profile分析执行耗时,Optimizer Trace解析优化全过程;
-慢查询经典案例:隐式转换、最左匹配、深分页问题(采用标签记录法和延迟关联法优化)、in元素过多(in条件超过200个数据就会导致代价计算存在问题)、order by走文件排序(order by结果行数据超过max_length_for_sort_data这个值,就走rowid排序,反之,走全字段排序)、索引失效、左右连接关联字段编码格式不同、group by使用临时表、delete + in子查询不走索引。
2月13日 day8
今日学习
-慢SQL优化思路:通过慢查询日志定位慢SQL,explain查看分析SQL的执行计划,profile分析执行耗时,Optimizer Trace解析优化全过程;
-慢查询经典案例:隐式转换、最左匹配、深分页问题(采用标签记录法和延迟关联法优化)、in元素过多(in条件超过200个数据就会导致代价计算存在问题)、order by走文件排序(order by结果行数据超过max_length_for_sort_data这个值,就走rowid排序,反之,走全字段排序)、索引失效、左右连接关联字段编码格式不同、group by使用临时表、delete + in子查询不走索引。
展开
评论
1
#青训营笔记创作活动#
2月12日 打卡day7
今日学习
-一条SQL诞生于开发者手动编写或者相关ORM框架自动生成;
-一条SQL执行前,MySQL连接池实现复用线程,客户端连接池实现复用数据库连接;
-一条查询SQL执行中,SQL接口对语句哈希处理,在查询缓存中比对没,如果没有就交由解析器处理;解析器进行词法、语义分析得到SQL语法树;优化器实现SQL的最优执行,然后依次调用存储引擎提供的API,最终发生磁盘IO;
-一条写入SQL执行中,与查询SQL的执行过程不同在查询时是从缓存中尝试获取数据,而写操作时,由于要对表数据发生更改,因此如果在缓存中发现了要操作的表存在缓存,则需要将整个表的所有缓存清空,确保缓存的强一致性。写SQL执行前后都会记录日志;
-读SQL返回时,数据逐条返回SQL接口,然后传回客户端;写SQL会返回受影响的行数,如果执行成功,其值大于0,反之等于0.
2月12日 打卡day7
今日学习
-一条SQL诞生于开发者手动编写或者相关ORM框架自动生成;
-一条SQL执行前,MySQL连接池实现复用线程,客户端连接池实现复用数据库连接;
-一条查询SQL执行中,SQL接口对语句哈希处理,在查询缓存中比对没,如果没有就交由解析器处理;解析器进行词法、语义分析得到SQL语法树;优化器实现SQL的最优执行,然后依次调用存储引擎提供的API,最终发生磁盘IO;
-一条写入SQL执行中,与查询SQL的执行过程不同在查询时是从缓存中尝试获取数据,而写操作时,由于要对表数据发生更改,因此如果在缓存中发现了要操作的表存在缓存,则需要将整个表的所有缓存清空,确保缓存的强一致性。写SQL执行前后都会记录日志;
-读SQL返回时,数据逐条返回SQL接口,然后传回客户端;写SQL会返回受影响的行数,如果执行成功,其值大于0,反之等于0.
展开
评论
1