2021-08-09 第8章 备份与复制 MySQL 《MySQL技术内幕》读书笔记 备份常用的方法是什么?冷备、热备 冷备是指在停止数据库后备份,直接备份数据库的物理文件即可,一般都是写个脚本 热备是指在数据库运行的时候直接备份,一般借用工具,如ibbackup、XtraBackup 什么是复制?主从复制,是用来建立
2021-08-08 第5章 MySQL索引 MySQL 《MySQL技术内幕》读书笔记 InnoDB支持的索引 B+树索引 全文索引 哈希索引(自适应) 说说B+树吧B+树就是一种平衡搜索树。所有的记录节点都按照键值从小到大顺序放在同一层的叶子节点上,如下图所示 聚集索引和辅助索引假设有个表如下:聚集索引就是用每个表的主键
2021-08-06 第3章 MySQL日志 MySQL 《MySQL技术内幕》读书笔记 MySQL常用的日志类型有哪些? 错误日志错误日志记录mysql在启动、运行、关闭过程中出现的问题,并会记录在错误文件中。用户可以通过SHOW VARIABLES LLKE 'log_error‘来定位错误日志文件。默认情况下文件名
2021-08-06 第1章 MySQL和存储引擎 MySQL 《MySQL技术内幕》读书笔记 MySQL存储引擎是什么? MySQL中的数据、索引以及其他对象是如何存储的,是一套文件系统的实现 MySQL存储引擎的选择 5.5之前默认存储引擎是MyISAM,5.5之后默认存储引擎是Innodb 具体说说MyISAM首先MyI
2021-07-28 第4章 锁的优化 Java并发 《Java高并发程序设计》读书笔记 4.1 锁的优化有哪些点? 减少锁的持有时间:尽量避免对整个方法synchronized,只在必要时进行synchronized 减小锁粒度:即缩小锁定对象的范围。例如ConcurrentHashMap对其中的某个段加锁,不要对整个Hash
2021-07-27 第3章 JDK并发包 Java并发 《Java高并发程序设计》读书笔记 3.1.1 重入锁ReentrantLock和synchronized的区别123456789101112public static ReentrantLock lock = new ReentrantLock();@Overridepub
2021-07-24 第7章 类加载机制 Java虚拟机 《深入理解Java虚拟机》读书笔记 类从被加载到JVM到卸载出内存的完整生命周期? 说一下各个步骤?加载: 查找并加载类文件的二进制数据 会在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的数据的入口 连接: 把已经读入内存的类的二进制数据
2021-07-24 第6章 Class文件结构 Java虚拟机 《深入理解Java虚拟机》读书笔记 什么是Class文件? Class文件是一组以8字节为单位的字节流,各个数据项目按顺序紧凑排列 Class文件格式只有两种类型:无符号数和表 无符号数是基本数据类型,如u1,u2,u4,u8代表1个字节,2个字节,4个字节,8个字节的无符号
2021-07-21 第3章 垃圾回收 Java虚拟机 《深入理解Java虚拟机》读书笔记 怎么判断对象是否需要回收? 引用计数法:给对象添加一个引用计数器,每有一个地方引用它就+1,引用失效就-1,如果是0则回收。 优点:效率高;缺点:无法回收循环引用的对象 可达性分析法:当一个对象到GC Roots对象没有任何引用链,则
2021-07-17 第2章 内存分配 Java虚拟机 《深入理解Java虚拟机》读书笔记 2.2 JVM体系结构概览 运行时数据区包含以下部分 程序计数器:(线程私有) 一块较小的内存空间, 用来存储指向下一条指令的地址 这个内存区域是唯一一个在虚拟机中没有规定任何 OutOfMemoryError 情况的区域 虚拟机栈