
数据库相关
文章平均质量分 74
lzrrrrr
死宅,dota2爱好者
展开
-
2021-05-26 [MySQL] MySQL中的那些日志
Mysql中的那些日志 今天来聊聊mysql中的哪些日志 错误日志 error log记录了mysql的启动、运行、关闭的一些信息,不仅是错误信息,错误日志也会记录一些警告信息或正确信息。 SHOW VARIABLES LIKE 'log_error'; 定位错误日志。 二进制日志 bin log记录了所有对数据库进行更改的操作,主要的目的适用于复制和恢复。 只有提交的事务才会记录到binlog,而binlog刷新到磁盘跟sync_binlog参数有关,若为0,则不控制该刷新,若为n,则等到提交n次事务后原创 2021-05-26 22:42:16 · 131 阅读 · 0 评论 -
2021-05-26 [MySQL] MySQL中的那些优化
Mysql中的那些索引和优化 增删改查优化 INSERT语句 当有大量语句要插入时: 将n条 INSERT INTO Table (id, name, score) VALUES ('1', '张三',78) 改为n/3条 INSERT INTO Table (id, name, score) VALUES ('1', '张三',78), ('2','李四',80),('3','王五',90) 这样就节省了解析的时间。 插入时尽量按照主键的顺序执行 考虑使用replace语句代替inser原创 2021-05-26 22:41:39 · 114 阅读 · 0 评论 -
2021-05-26 [MySQL] MySQL中的那些锁
MySQL中的那些锁 为什么要有锁呢?其实跟我们在学java锁的目的是一样的,即保证一个数据在一定时间内只能被一个线程所修改。 而根据锁的粒度,在mysql中可以分为3大类:表锁、行锁、页锁。 页锁用的不多,这里就不讨论了。 表锁 顾名思义,表锁锁住的是一张表,MyISAM支持,优点是不会产生死锁,且开销小、速度快。 在使用表锁时,我们首先需要获取我们需要的所有表锁: lock table testTable1 read, testTable2 write; 上述操作对testTable表加了一把读锁,对原创 2021-05-26 22:40:41 · 133 阅读 · 1 评论 -
高性能mysql阅读笔记(三)服务器性能剖析
高性能mysql阅读笔记(三)服务器性能剖析 性能优化简介 我们可能会听到很多很多的性能指标(qps,吞吐率,cpu利用率等等) 在这里,我们单纯的将性能定义为响应时间,而性能优化即在一定的工作负载下尽可能的降低响应时间。 所以,重中之重即找出时间都花费到了哪些地方,即性能剖析。 性能剖析包括两个步骤 测量任务的花费时间 对花费时间进行排序 剖析Mysql查询 原著中在此章之前还加了一章对ph应用的性能剖析,由于这里我们只关注mysql,所以感兴趣的可以查看原著(其实是我不懂php哈哈) mysql的性原创 2021-04-11 21:49:29 · 147 阅读 · 0 评论 -
高性能mysql阅读笔记(二)mysql基准测试
高性能mysql阅读笔记(二)MySQL基准测试 测试指标 1.吞吐量 在数据库中,吞吐量指的是单位时间内的事务处理数,单位是TPS(每秒事务数) 2.响应时间 通常使用百分比响应时间,如95%5ms 3.并发性 并发性基准测试需要关注的是正在工作中的并发操作,或者是同时工作中的线程数或者连接数。当并发性增加时,需要测量吞吐量是否下降,响应时间是否变长,如果是这样,应用可能就无法处理峰值压力。 4.可拓展性 可拓展性指的是,可系统增加一倍的工作,在理想情况下能得到两倍的吞吐量,用于发现应用的原创 2021-04-11 21:03:17 · 148 阅读 · 0 评论 -
高性能mysql阅读笔记(一)mysql的架构与历史
高性能mysql阅读笔记(一)mysql架构与历史 前言 对于mysql的学习,博主一直局限于本科课堂的数据库知识,然后就是零零碎碎的阅读一些书籍的部分章节,没有系统的学习过,所以在这里再挖个坑,之后会陆陆续续的把这本高性能mysql读完,笔记为证。 mysql的逻辑架构 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DxqfDQfJ-1618146150944)(uploads/image-20210410224823785.png)] 如上图所示,mysql的逻辑结构分为原创 2021-04-11 21:03:00 · 110 阅读 · 0 评论 -
后端开发技能学习(十)redis学习(中篇)
文章目录后端开发技能学习(十)redis学习(中篇)客户端Java客户端jedispython客户端redis-py持久化RDBAOF问题定位与优化多实例部署复制配置原理阻塞发现阻塞内因外因 后端开发技能学习(十)redis学习(中篇) 客户端 redis中的客户端与服务端通信采用的RESP协议,该协议基于TCP协议,协议格式如下: 发送命令格式: *<参数数量> CRLF $<参数1的字节数量> CRLF <参数1> CRLF ... $<参数N的字节数量>原创 2020-12-17 22:04:18 · 485 阅读 · 0 评论 -
后端开发技能学习(九)redis学习(上篇)
文章目录后端开发技能学习(九)redis学习(上篇)安装与使用入门基础命令数据类型 后端开发技能学习(九)redis学习(上篇) 安装与使用 入门 基础命令 先来点基础命令 SELECT n # 选择字典(默认有16个字典) n代表字典序号默认字典为0号 KEYS * # 通过通配符来匹配并显示键值 TYPE key # 查看键值的数据类型 SET key value # 新建键对值 DEL key # 删除键对值 GET key # 获得值 EXISTS key # 判断键是否存在 数据类型 1.字符串原创 2020-12-15 21:40:38 · 564 阅读 · 0 评论 -
后端开发技能学习(七)sql命令学习(中篇)
文章目录后端开发技能学习(七)sql命令学习(中篇)1.创建计算字段1.1 拼接字段1.2 使用别名1.3 执行算数运算2. 数据处理函数文本处理函数日期和时间处理函数 后端开发技能学习(七)sql命令学习(中篇) 1.创建计算字段 一般来说,存储在表中的数据不是应用程序所需要的,而在客户机上对这些数据进行转换的效率远远不如在数据库中的处理。 1.1 拼接字段 拼接: 将值联结到一起构成单个值 使用Concat()函数可以拼接两个列: 栗子: SELECT Concat(vend_name,'(',vend原创 2020-10-08 21:43:30 · 142 阅读 · 1 评论 -
后端开发技能学习(六)sql命令学习(上篇)
文章目录后端开发技能学习(六)sql命令学习(上篇)数据库基础检索排序检索过滤where子句过滤组合过滤通配符过滤 后端开发技能学习(六)sql命令学习(上篇) 数据库基础 数据库:保存有组织的数据的容器 表:某种特定类型数据的结构化清单 列:表中的一个字段。所有表都是由一个或多个列组成的 行:表中的一条记录 主键:一列(或一组列),其值能够唯一区分表中的每个行,主键需满足:1.任意两行都不具有相同的主键值 2.每个行都必须具有一个主键值(不能为null) sql:结构化查询语言,用来与数据库通信 检索 要原创 2020-10-02 09:49:47 · 141 阅读 · 0 评论