获得徽章 1
#青训营笔记创作活动#
2月23日打卡
当服务需要进一步扩展时,就会随之产生出一些问题
多服务并发时,如果还是只给当前线程加锁,多个用户一起尝试获取锁时,可能会有多个用户同时获取到锁,导致出现问题。
评论
#青训营笔记创作活动#
2月22日打卡
今日学习
可以从表容量/磁盘空间/实例容量三方面评估数据体量三种解决方案,包括数据表分区,分库分表,冷热数据归档
评论
#青训营笔记创作活动#
2月20日打卡
因为 Filebeat 是基于监控日志文件有没有新增来同步数据的,所以需要配置日志文件的目录
评论
#青训营笔记创作活动#
2月19打卡
数据表分区
1.数据量较大 2.查询场景只在某个区 3.没有联合查询的场景
数据表分表
数据量较大,无法区分明显冷热区  且数据可以完整按照区间划分
冷热归档分库
数据量较大;数据冷热分区明显;冷数据使用频率极低
展开
评论
#青训营笔记创作活动#
2月17日打卡
死锁是指两个或两个以上 的线程因为资源竞争造成相互等待的现象。
在INNODB中,如果一条SQL语句能命中索引执行那就会加行锁,如果无法命中就加表锁。
锁超时机制和外力介入打破僵局
waitforgraph当存在等待循环,第三方强制介入
解决思路是尽量缩短一个事务持有锁的时间,减小锁的粒度以及数量
展开
评论
#青训营笔记创作活动#
2月16日打卡
group__concat()组内合并该函数返回带有来自一个组的连接的非NULL值的字符串结果 。
convert()转换格式
(1)不要使用*
(2)不要关联太多表
(3)多表查询先查小表再检索大表.
(4)先执行in中的子表,此时应该要确保子表条件位于所有条件的最后面
(5)不要队字段做空查询
(6)where中的条件不要在等号前运算否则无效
(7) or可以用union all替换
(8)使用分批查询
展开
评论
#青训营笔记创作活动#
2月15日打卡
(1) 下载并运行MYSQL8 docker镜像
(2) 下载并运行bytebase docker镜像
(3) 设置账号密码。
(4)设置成员新增成员。
(5)在环境中设置数据库变更是否需要人工审核。
(6)配置好环境就可在实例中配置数据库实例。
(7)输入连接信息选择环境就能配置成功。
(8)创建项目进行sql编辑。
展开
评论
#青训营笔记创作活动#
2月14日打卡
1.DDL语句适合已经确定了索引项。
2.建错了只能使用drop删除。
3.使用FORCE INDEX 可以为一条查询语句强制指定索引查询。
4.创建一个索引会基于原有的表数据在磁盘中创建新的本地索引文件,并将原有表数据复制过来,同时要排序和映射。
展开
评论
#青训营笔记创作活动#
2月13日打卡
(10)set GLOBAL max-connections控制最大线程数
(11)当客户端连接断开后,数据库连接会先放入一个缓存连接池中,一般大小为32
(12)系统服务层包括请求解析,语义分析,查询优化,缓存及内置函数,跨引擎也在这层实现。
(13)dml,ddl,dql,dcl,tcl
(14)通过insert,update,delete三种事件触发,同时通过after,before声明触发时机
(15)优化器实质是通过线程根据计划调用存储引擎的apl执行sql
(16)经常执行的语句保存在cache中,如果缓存中有则在缓冲区操作完毕后,利用checkpoint机制将内存中更新的数据刷新到磁盘上
展开
评论
#青训营笔记创作活动#
2月12日打卡
(1)连接层负责处理所有客户端接入包括缓存管理,身份验证授权
(2)服务层包含sql接口,解析器,优化器 以及缓存缓冲
(3)存储引擎包括innodb,myisam等
(4)文件系统:包括日志数据索引文件
(5)支持tcp和ip的都能与mysql建立连接
(6)-h表示mysqlIP地址,tcp建立后mysql与客户端建立session会话
(7)先与客户端进行半双工
(8)show processlist 查询所有线程,利用线程id值通过kill强杀线程
展开
评论
#青训营笔记创作活动#
2月11日打卡
(1)除格式信息,非聚和聚簇(主非主)都只存索引数据。
(2)聚簇索引所有字段信息保存在叶子节点。
(3)非聚簇只存主键和索引,需要回表相当于存了指针
(4)B+树最好三层,4到32最大行长小于一半 ,64小于16,否则用外部叶存储。
(5)页(约等于节点)是innodb的最小磁盘单位。存储页格式和行格式即用户数据
(6)顺序插入大约15/16,随机为1/2到15/16
(7)dynamic将较长列值存储到溢出页上但要保留20个字节指向溢出页。只要过长就页外存储直到符合页的要求,小于40的text,blob直存储。
(8)页和叶子节点的存储数据量相同为15000左右
(9)第三层n个节点的平方,最少存放2*n方
(10)其余的用15000除以行数据大小算出每个节点 可存放的条数再乘以总节点数即n方
展开
评论
#青训营笔记创作活动#
2月10 打卡day 1
今日学习
1月12日 打卡day1
计数器限流存在边界问题,
(1)可以通过去锁原子计数方式实现限流。
(2)滑动窗口,但是需要自己确定精度
(3)漏桶算法,仅限制漏出速率,从而不会出现突发流量
(4)令牌桶,按公式计算限制平均流入速率。
(5)redis+lua 以集群为维度,通过redis计数,lua执行原子性,进行分布式限流
(6)tomact,nginx对容器限流。
展开
评论
下一页
个人成就
文章被阅读 1,580
掘力值 187
收藏集
0
关注标签
0
加入于