![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL调优
文章平均质量分 89
qq_718985935
骑着笨鸟飞呀飞
展开
-
深入理解MySQL数据库底层原理
1、描述一下数据库事务隔离级别? ACID: 原子性:undo log(MVCC) 一致性: 最核心和最本质的要求 隔离性:锁,mvcc(多版本并发控制) 持久性:redo log 数据库的事务隔离级别有四种,分别是读未提交、读已提交、可重复读、序列化,不同的隔离级别下会产生脏读、幻读、不可重复读等相关问题,因此在选择隔离级别的时候要根据应用场景来决定,使用合适的隔离级别。 各种隔离级别和数据库异常情况对应情况如下:隔离级别脏读不可重复 读幻读原创 2021-03-23 19:44:56 · 368 阅读 · 0 评论 -
MVCC多版本并发控制
MVCC多版本并发控制1、MVCC MVCC,全称Multi-Version Concurrency Control,即多版本并发控制。MVCC是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问,在编程语言中实现事务内存。 MVCC在MySQL InnoDB中的实现主要是为了提高数据库并发性能,用更好的方式去处理读写冲突,做到即使有读写冲突时,也能做到不加锁,非阻塞并发读。2、当前读 像select lock in share mode(共享锁), select for原创 2021-03-23 19:42:37 · 130 阅读 · 0 评论 -
JVM面试专题及答案
1. 内存模型以及分区,需要详细到每个区放什么。JVM 分为堆区和栈区,还有方法区,初始化的对象放在堆里面,引用放在栈里面,class 类信息常量池(static 常量和 static 变量)等放在方法区new:· 方法区:主要是存储类信息,常量池(static 常量和 static 变量),编译后的代码(字节码)等数据· 堆:初始化的对象,成员变量 (那种非 static 的变量),所有的对象实例和数组都要在堆上分配· 栈:栈的结构是栈帧组成的,调用一个方法就压入一帧,帧上面存储原创 2021-03-22 20:02:44 · 71 阅读 · 0 评论 -
Dubbo面试及答案(上)
Dubbo 支持哪些协议,每种协议的应用场景,优缺点?• dubbo: 单一长连接和 NIO 异步通讯,适合大并发小数据量的服务调用,以及消费者远大于提供者。传输协议 TCP,异步,Hessian 序列化;• rmi: 采用 JDK 标准的 rmi 协议实现,传输参数和返回参数对象需要实现Serializable 接口,使用 java 标准序列化机制,使用阻塞式短连接,传输数据包大小混合,消费者和提供者个数差不多,可传文件,传输协议 TCP。多个短连接,TCP 协议传输,同步传输,适用常原创 2021-03-22 20:00:50 · 141 阅读 · 0 评论 -
MySQL55题及答案
1、一张表,里面有 ID 自增主键,当 insert 了 17 条记录之后,删除了第 15,16,17 条记录,再把 Mysql 重启,再 insert 一条记录,这条记录的 ID 是 18 还是 15 ?(1)如果表的类型是 MyISAM,那么是 18因为 MyISAM 表会把自增主键的最大 ID 记录到数据文件里,重启 MySQL 自增主键的最大ID 也不会丢失(2)如果表的类型是 InnoDB,那么是 15InnoDB 表只是把自增主键的最大 ID 记录到内存中,所以重启数据库或者是对表进行原创 2021-03-22 19:56:33 · 376 阅读 · 0 评论 -
MySQL调优之覆盖索引
覆盖索引1、当发起一个被索引覆盖的查询时,在explain的extra列可以看到using index的信息,此时就使用了覆盖索引mysql> explain select store_id,film_id from inventory\G*************************** 1. row *************************** ...原创 2020-05-04 18:49:30 · 92 阅读 · 1 评论 -
MySQL调优之分区表的底层原理
分区表的底层原理 分区表由多个相关的底层表实现,这个底层表也是由句柄对象标识,我们可以直接访问各个分区。存储引擎管理分区的各个底层表和管理普通表一样(所有的底层表都必须使用相同的存储引擎),分区表的索引知识在各个底层表上各自加上一个完全相同的索引。从存储引擎的角度来看,底层表和普通表没有任何不同,存储引擎也无须知道这是一个普通表还是一个分区表的一部分。 分区表的操作按照以下的操作逻辑进...原创 2020-05-04 18:48:08 · 186 阅读 · 1 评论 -
MySQL调优之mysql主从复制原理
mysql主从复制原理0、为什么需要主从复制?1、在业务复杂的系统中,有这么一个情景,有一句sql语句需要锁表,导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出现了锁表的情景,通过读从库也可以保证业务的正常运作。2、做数据的热备3、架构的扩展。业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的...原创 2020-05-04 18:47:05 · 135 阅读 · 1 评论 -
MySQL调优之mysql读写分离
mysql读写分离[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rtnqd0CL-1588589102064)(E:\lian\oracle\mysql\mysql-proxy.jpg)]1、读写分离的介绍[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-veZz51GA-1588589102091)(E:\lian\oracle\...原创 2020-05-04 18:45:52 · 95 阅读 · 0 评论 -
MySQL调优之mysql的锁机制
mysql的锁机制1、MySQL锁的基本介绍 **锁是计算机协调多个进程或线程并发访问某一资源的机制。**在数据库中,除传统的 计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一 个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。 ...原创 2020-05-04 18:43:46 · 74 阅读 · 0 评论 -
MySQL调优之 performance schema详解
MYSQL performance schema详解0、performance_schema的介绍 MySQL的performance schema 用于监控MySQL server在一个较低级别的运行过程中的资源消耗、资源等待等情况。 特点如下: 1、提供了一种在数据库运行时实时检查server的内部执行情况的方法。performance_schema 数据库中的表使用per...原创 2020-05-04 18:41:58 · 1138 阅读 · 2 评论