自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

转载 MySQL中myisam和innodb的主键索引有什么区别?

MyISAM引擎使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址。下图是MyISAM索引的原理图:这里设表一共有三列,假设我们以Col1为主键,则上图是一个MyISAM表的主索引(Primary key)示意。可以看出MyISAM的索引文件仅仅保存数据记录的地址。在MyISAM中,主索引和辅助索引(Secondary key)在结构上没有任何区别,只是主索引要

2016-10-16 22:20:38 474

原创 mysql 的 redo 和 undo

InnoDB 有两块非常重要的日志,一个是undo log,另外一个是redo log,前者用来保证事务的原子性以及InnoDB的MVCC,后者用来保证事务的持久性。和大多数关系型数据库一样,InnoDB记录了对数据文件的物理更改,并保证总是日志先行,也就是所谓的WAL(Write Ahead Log),即在持久化数据文件前,保证之前的redo日志已经写到磁盘.undo:U

2016-10-11 10:43:56 721

转载 mysql的mvcc(多版本并发控制)

我们知道,mysql的innodb采用的是行锁,而且采用了多版本并发控制来提高读操作的性能。什么是多版本并发控制呢 ?其实就是在每一行记录的后面增加两个隐藏列,记录创建版本号和删除版本号,而每一个事务在启动的时候,都有一个唯一的递增的版本号。 1、在插入操作时 : 记录的创建版本号就是事务版本号。 比如我插入一条记录, 事务id 假设是1 ,那么记录如下:也就是说,

2016-09-23 15:28:50 389

转载 java Class文件内部结构解析

java语言是跨平台的,所谓一次编写,到处运行。之所以是跨平台的,就是java定义了一套与操作系统,硬件无关的字节码格式,这个字节码就是用java class文件来表示的,java class文件内部定义了虚拟机可以识别的字节码格式,这个格式是平台无关性的,在linux系统或者在windows系统上都是一致的。这个就好比html文件,我们定义好规范,这个系统只要去按照规范显示出来里面的内容就好了。

2016-09-06 17:29:44 332

转载 mysql中orderby和limit同时使用的bug

官网地址:http://bugs.mysql.com/bug.php?id=32933 以下转载:http://bbs.chinaunix.net/thread-1276235-1-1.html 我的SQL很简单我想从一个表中检索所有标题含有“中国”的数据,将它们按id排序,取前5条,所以我写了以下语句SQL语句1:select fi_id, fi_

2016-09-05 16:44:45 5764

原创 VMware 安装 CentOS 安装 CentOS-6.5-i386-minimal.iso 版本

1 VMware安装minimal centos报错/etc/rc5.d/s99local : line:25 : eject : command not found有人用vmware安装minimal centos报错/etc/rc5.d/s99local : line:25 : eject : command not found 。我们看下完整报错内容:

2016-03-23 18:14:08 6625

原创 Spring配置事务管理,service端通过@Transactional注解

使用步骤:步骤一、在spring配置文件中引入命名空间 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/sch

2016-03-08 10:16:34 10414

原创 mysql 主从同步原理

mysql 备份工作原理:简单的说就是把 一个服务器上执行过的sql语句在别的服务器上也重复执行一遍, 这样只要两个数据库的初态是一样的,那么它们就能一直同步。当然这种复制和重复都是mysql自动实现的,我们只需要配置即可。整体上来说,复制有3个步骤:          (1)    master将改变记录到二进制日志(binary log)中(这些记录叫做二进

2016-03-02 17:26:03 727

转载 java5中的 Map 与线程安全

java5的java.util包提供了大量集合类。其中最常用的集合类有List、Set、Map等。这篇文章主要介绍其中的Map。首先,来看下java.util包中Map相关的集合类的类图(见附件中图1)。接口Map是整个类图的跟,Map往下又提供了两个接口:ConcurrentMap和SortedMap。ConcurrentMap是java5中新增的线程安全的Map接口;而SortedMa

2016-03-02 17:08:34 570

原创 FileOutputStream和BufferedInputStream效率

import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;

2016-03-01 15:46:08 1359

转载 SimpleDateFormat线程不安全性的三种方法解决

在java项目中,我们通常会自己写一个dateutil类,处理日期和字符串的转换。如下 public class dateutil{      private static simpledateformat sdf = new simpledateformat("yyyymmdd");     public static formatdatetoyyyymm

2016-02-23 15:21:30 609

原创 JVM内存及其GC

JAVA堆线程共享的,存放所有对象实例和数组。垃圾回收的主要区域。可以分为新生代和老年代(tenured)。新生代用于存放刚创建的对象以及年轻的对象,如果对象一直没有被回收,生存得足够长,老年对象就会被移入老年代。新生代又可进一步细分为eden、survivorSpace0(s0,from space)、survivorSpace1(s1,to space)。刚创建的对象都放入eden

2016-01-27 17:07:31 367

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除