mysql
程序员劝退师丶
有道无术,术尚可求也,有术无道,止于术
展开
-
mysql系列(五) mysql索引详细解析及使用
1. 什么是索引:mysql索引:BTree索引,一种树形结构,索引速度比全表查询快一个叶子节点(mysql的一个叶)默认每页16K大小InnoDB使用B+Tree,B+Tree中每个叶子节点都有一个指向下一个叶子节点的指针2. 聚簇索引聚簇索引是一种数据存储方式,因为是存储引擎实现,因此不是所有存储引擎都支持聚簇索引(不同的存储引擎会使用不同的索引)聚簇索引:(主键都有一...原创 2020-01-10 17:24:02 · 302 阅读 · 0 评论 -
mysql系列(四) mysql数据库设计优化
mysql数据库优化是一项繁杂且艰巨的工作,需要各方面的经验来达到最终的优化效果;而且只有当mysql到达一定的数据量优化的效果才会凸显。总之你知道的越多,你不知道的越多;技术之路永无止境1.选择优化的数据类型1.更小的通常更好:一般情况下,应该尽量选择使用可以正确存储数据的最小数据类型。例如:只需要存储-128~127,tinyint更好。更小 的数据类型通常更快,因为它们占用更少...原创 2020-01-10 17:23:40 · 227 阅读 · 0 评论 -
mysql系列(三) mysql存储引擎简介
1.InnoDB引擎:InnoDB是一种兼顾了高可靠性和高性能的通用存储引擎。在MySQL 5.7中,InnoDB是默认的MySQL存储引擎。除非配置了其他默认存储引擎,否则发出CREATE TABLE不带ENGINE=子句的语句将创建一个InnoDB表。InnoDB表是基于聚簇索引建立的,其索引结构和MySQL的其他存储引擎有很大区别。内部做了很多优化,包括从磁盘读取数据时采用的可预测性...原创 2020-01-10 17:22:58 · 454 阅读 · 0 评论 -
mysql系列(七)mysql 主从复制和mysql查询优化
1.什么是MySQL主从复制MySQL数据库自身提供的主从复制功能可以方便的实现数据的多处自动备份,实现数据库的拓展。多个数据备份不仅可以加强数据的安全性,通过实现读写分离还能进一步提升数据库的负载性能。2.mysql的不同复制类型2.1异步复制MySQL复制默认是异步复制,Master将事件写入binlog,提交事务,自身并不知道slave是否接收是否处理;这样就会有一...原创 2020-01-10 17:24:42 · 219 阅读 · 0 评论 -
mysql系列(六)mysql 慢日志查询(pt-query-digest)/如何单条SQL分析和Explain及trace工具
对MySQL的sql查询进行性能分析主要有两种方式:分析整个数据库服务器,这样可以找到哪些查询是主要的压力来源。 定位具体需要优化的查询后,可以对这些查询进行单独的剖析,分析哪些子任务是影响时间的主要消耗者。1.mysql 开启慢查询日志#是否开启慢查询日志,1/on表示开启,0/off表示关闭SHOW VARIABLES like 'slow_query_log';#未使用索引...原创 2020-01-10 17:24:25 · 474 阅读 · 0 评论 -
mysql系列(二)mysql简介之逻辑架构/锁粒度/事务/死锁/事务日志/MVCC
1. mysql 逻辑架构第一层:并不是mysql独有的的,大多数基于网络的客户端/服务器的工具或者服务都有类似的架构,比如说连接处理,授权认证,安全等,在这层上也引入了线程池的概念;第二层:是mysql多数核心功能位置,包含查询解析,分析,优化,缓存以及所有的内置函数(日期,时间,数学和加密函数等)所有跨存储引擎的功能都在这一层实现:存储过程,触发器,视图。第三层:包含存储引擎,存储...原创 2020-01-10 17:22:21 · 239 阅读 · 0 评论 -
深入理解mysql数据库锁及事务隔离机制
在ACID中,隔离性其实比想象的要复杂。在SQL标准中定义了四种隔离级别,每一种级别都规定了一个事务中所 做的修改,哪些在事务内和事务间是可见的,哪些是不可见的。较低级别的隔离通常可以执行更高的并发, 系统的开销也更低。隔离级别 脏读 不可重复的 幻读 加锁读 READ UNCIMMITTED Y Y Y N READ COMMI...原创 2018-03-07 08:45:17 · 289 阅读 · 0 评论 -
mysql系列(一) centos7 安装msql
环境:阿里云ECS服务器,操作系统:linux / CentOS 7.7 64位,规格:1 vCPU 2 GiB安装前要删除原来的数据库(阿里云服务器无此步骤):centos7中默认安装了数据库MariaDB,如果直接安装MySQL的话,会直接覆盖掉这个数据库,当然也可以手动删除一下:// 查询出来已安装的mariadbrpm -qa|grep mariadb// 卸载mari...原创 2020-01-10 17:21:49 · 236 阅读 · 0 评论