
笔记
鸭梨山大哎
life hard take it easy
展开
-
MyISAM存储引擎简介
在数据库中,MyISAM存储引擎的每一个表都被存放为三个以表名命名的物理文件。首先肯定会有任何存储引擎都不可缺少的存放表结构定义信息的.frm文件,另外还有.MYD和.MYI文件,分别存放了表的数据(.MYD)和索引数据(.MYI)。每个表都有且仅有这样三个文件作为MyISAM存储类型的表的存储,也就是说不管这个表有多少个索引,都存放在同一个.MYI文件中。可靠性MyISAM存储引擎的表是否足够可靠呢?在MySQL用户参考手册中列出了遇到如下情况时可能会出现的表文件损坏:(1)当MySQL正在做写操作原创 2021-06-26 07:30:46 · 505 阅读 · 0 评论 -
第二范式入门
第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)。第二范式(2NF)要求实体的属性完全依赖于主关键字。还是以上面的病人信息表来举例,下面在上表的基础上新增加了一些字段,如图5-1所示。图5-1中的信息存在着以下依赖关系:{病人编号}←{姓名,性别,出生日期,就诊记录,联系方式}{医生编号}←{姓名,性别,职称,科室编号,科室名称,负责人,诊室号}这里,出现了两个主关键字,显然不满足第二范式。从表里的数据来看,出现了冗余数据:3名患者原创 2021-06-24 20:01:02 · 3740 阅读 · 0 评论 -
JVM的内存划分
JVM的内存区域分为线程私有区域(程序计数器、虚拟机栈、本地方法区)、线程共享区域(堆、方法区)和直接内存,如图1-2所示。线程私有区域的生命周期与线程相同,随线程的启动而创建,随线程的结束而销毁。在JVM内,每个线程都与操作系统的本地线程直接映射,因此这部分内存区域的存在与否和本地线程的启动和销毁对应。线程共享区域随虚拟机的启动而创建,随虚拟机的关闭而销毁。直接内存也叫作堆外内存,它并不是JVM运行时数据区的一部分,但在并发编程中被频繁使用。JDK的NIO模块提供的基于Channel与Buffer原创 2021-06-24 09:44:36 · 733 阅读 · 0 评论 -
JVM的类加载过程
JVM的类加载分为5个阶段:加载、验证、准备、解析、初始化。在类初始化完成后就可以使用该类的信息,在一个类不再被需要时可以从JVM中卸载,如图1所示。1.加载指JVM读取Class文件,并且根据Class文件描述创建java.lang.Class对象的过程。类加载过程主要包含将Class文件读取到运行时区域的方法区内,在堆中创建java.lang.Class对象,并封装类在方法区的数据结构的过程,在读取Class文件时既可以通过文件的形式读取,也可以通过jar包、war包读取,还可以通过代理原创 2021-06-23 23:39:38 · 282 阅读 · 1 评论