mysql优化
programmer--阿四
少些随波逐流的放纵,多些不为什么的坚持。
展开
-
mysql事务与锁关系
mysql事务与锁关系目录一、事务的基础理论1. 应用场景2. 代码实现2.1 思路2.2 事务开启2.3 提交方式3. 事务需求4. 事务特性4.1 第一个特性 原子性(Atomicity)4.2 第二个特性 一致性(Consistency)4.3 第三个特性 隔离性(Isolation)4.4 第四个特性 持久性(Durability)二、事务的生命周期三、事务的重做日志与回滚日志1. 重做日志2. 回滚日志四、事务日志的详细流程4.1 事务日志的执行流程4.2 事务日志存储数据五、 事务使用建议 一、原创 2020-11-10 11:57:28 · 274 阅读 · 0 评论 -
mysql锁机制与结构
mysql锁机制与结构目录一、锁的基础与行锁的特点1. 概念2. 锁特性3. 锁类型3.1 表级锁3.2 页级锁3.3 行级锁3.3.1 行级锁类型排它锁共享锁4. 总结二、死锁的产生于处理1. 死锁简介2. 死锁产生的原因3. 解决办法4. 避免死锁三、乐观锁与悲观锁1. 乐观锁1.1 MVCC-乐观锁的解释2. 悲观锁四、间隙锁与行锁升级表锁1. 间隙锁1.1 概念1.2 危害2. 行锁升级表锁2.1 为什么行锁会升级表锁的原因2.2 如何避免 一、锁的基础与行锁的特点 1. 概念 1. 在开发多用户、原创 2020-11-10 11:29:51 · 243 阅读 · 0 评论 -
优化器执行过程与分析
优化器过程与分析案例一、开启优化器二、优化器执行过程解析2.1 优化器执行过程与解析注释2.2 优化器都做了什么2.3 优化器执行过程分析三、总结 案例 查询在长沙的女性VIP顾客 sql语句:select * from customers1s where city=“长沙” and gender=0; 一、开启优化器 开启trace查看优化器 set optimizer_trace="enabled=on";--开启trace查看优化器的结果 set end_markers_in_json=on;--增加原创 2020-11-08 11:34:39 · 406 阅读 · 0 评论 -
mysql最左匹配原则与索引选择原则
mysql索引选择原则一、explain语句分析1. 作用2. 语法3. 详细字段说明二、联合索引结构与最左匹配原则1. 联合索引结构1.1 简介2. 最左匹配原则2.1 简介2.2 建立联合索引3. 验证3.1 验证最左匹配原则是否与条件顺序有关?3.2 验证最左匹配原则匹配最左边的列?3.3 最左原则总结三、mysql对于索引优先考虑对象1. 简介2. 条件与分组、排序共存的情况下2.1 原因3. 条件与排序共存3.1 原因4. 分组排序共存4.1 原因5. 优化方案四、mysql索引的挑选原则1.索引原创 2020-11-08 10:47:28 · 728 阅读 · 0 评论 -
mysql索引类型、数据存储与哈希索引的区别
mysql索引类型与数据存储一、innodb索引与myisam索引存储数据的区别二、innodb回表问题三、hash索引1. 介绍2. 键值的含义3. 添加hash索引命令4. hash索引的特点与创建5. 限制6. 使用场景四、全文索引1. 介绍2. 使用场景3. 全文索引创建4. 查询语句五、BTree索引和哈希索引的区别 一、innodb索引与myisam索引存储数据的区别 myisam索引(MYI)与数据(MYD)分开存储,叫做非聚集索引(UnClustered Index) innodb数据与索引原创 2020-11-01 11:40:00 · 429 阅读 · 0 评论 -
mysql索引与innodb结构
mysql索引与innodb结构一、innodb存储引擎结构1. 简介2. innodb是如何去存储数据的3. innodb缓存池 (innodb_buffer_pool)数据页(data page)索引页lru算法二、什么是索引1. mysql中的索引类型1.1 索引术语2. btree结构2.1 二分法:2.2 二叉树三、sql-io--索引执行流程四、b+tree结构--平衡二叉树1. 步骤2. b+tree结构3. b+tree与b-tree的不同总结 一、innodb存储引擎结构 1. 简介 .i原创 2020-11-01 10:56:08 · 175 阅读 · 0 评论 -
mysql性能压测工具的使用
mysql性能压测一、mysqlslap 压测二、ab性能压测1、吞吐率(Requests per second)2、并发连接数(The number of concurrent connections)3、并发用户数(Concurrency Level)4、用户平均请求等待时间(Time per request)5、服务器平均请求等待时间(Time per request:across all concurrent requests)四、jmeter介绍:优势:安装及基本使用教程: 一、mysqlslap原创 2020-10-24 16:59:03 · 455 阅读 · 0 评论 -
轻松理解Mysql结构与sql执行流程
Mysql优化---Mysql结构与sql执行目录一、mysql大体结构客户端服务端二、sql执行流程1. 连接层2. sql层3. 存储引擎层三、Mysql查询执行总结与查询问题: 目录 一、mysql大体结构 客户端 PHP,Navicat等 服务端 连接层 sql层 存储引擎层 二、sql执行流程 1. 连接层 1.连接层(主要是线程连接的处理,对程序连接的管理) 1.1 连接之后对用户密码的校验 1.2 对于校验之后的连接进行线程分配管理 1.3 对用户校验 =》对于数据库表的操作权限的原创 2020-10-21 10:39:35 · 182 阅读 · 0 评论 -
影响mysql性能问题的因素与Linux/mysql查询命令
MySQL性能问题一、性能因素影响性能问题二、虚拟机配置2.1 虚拟机黑屏2.2 虚拟机网络连接不上2.3 配置IP2.4 Xshell连接2.5 虚拟机安装jdk三、Linux查询命令3.1 ps命令3.2 top命令3.3 vmstat命令四、Linux管道机制五、mysql性能查询命令 一、性能因素影响 性能问题 性能问题: 硬件层面: CPU、内存、硬盘、网络、I/O、显卡 软件层面: 产品原因: 代码、SQL、算法 其他软件原因: 数据库、中间件原创 2020-10-21 12:00:26 · 347 阅读 · 0 评论 -
虚拟机Linux系统安装mysql8.0与Navicat连接mysql
Linux安装mysql8.0与Navicat连接mysql一、Linux下载安装mysq1 下载mysql安装包,也可以通过本地xftp上传到虚拟机2 将下载的mysql安装包解压3 配置mysql配置文件与初始化mysql4 修改mysql配置文件5 创建tmp存储文件mysql.sock6 加入开机自启7 开启mysql服务并配置环境变量8 登录mysql,修改密码二、Navicat连接mysql三、总结 一、Linux下载安装mysq 1 下载mysql安装包,也可以通过本地xftp上传到虚拟机 m原创 2020-10-24 16:29:12 · 1520 阅读 · 2 评论