自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(170)
  • 资源 (20)
  • 收藏
  • 关注

原创 MySQL之索引树实现

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]为什么MySQL的InnoDB中的索引要使用B+树,而不是其它树?比如B树?一、提出点InnoDB的一棵B+树可以存放多少行数据?答案:约2千万怎么计算出来的?先从InnoDB索引数据结构、数据组织、索引实现方式说起。二、InnoDB存储引擎储...

2019-11-04 03:26:08 13181

原创 核心原理-Println

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]本文主要通过平常常用的go的一个函数,深入源码,了解其底层到底是如何实现的。PrintlnPrintln函数接受参数a,其类型为…interface{}。用过Java的对这个应该比较熟悉,Java中也有…的用法。其作用是传入可变的参数,而inte...

2019-10-25 03:37:47 13385

原创 核心原理-协程栈

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]###什么是协程栈每个协程都需要有自己的栈空间,来存放变量,函数,寄存器等信息。所以系统需要给协程分配足够的栈空间。栈分配方式固定大小的栈每个协程都有相同的,固定大小的栈。优点:实现简单;缺点:每个协程需要的栈空间不尽相同,如果一概而论,那...

2019-10-25 03:37:47 13532

原创 什么是Raft

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景理解分布式多个参与者 针对 某一件事 达成完全 一致 :一件事,一个结论已达成一致的结论,不可推翻分布式共识算法Paxos:被认为是分布式共识算法的根本,其他都是其变种,但是 Paxos 论文中只给出了单个提案的过程,并没有给出复制...

2019-03-15 02:09:55 13481

原创 分布式系统的一致性

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。为了解决这样一系列问题,大型网站的架构也在不断发展。提高大型网站的高可用架构,不得不提的就是分布式。主要介绍分布式一致性...

2019-03-15 02:09:55 13432

原创 dubbo之9种rpc协议

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景只要涉及通信(大多数是进程通信)就需要通信协议,那么可能要将我们眼里的对象(字符流)按照一定的协议进行字节流通信;那么作为有名rpc框架之一dubbo 支持的rpc协议是支持多种配置的;Dubbo支持dubbo、rmi、hessian、htt...

2019-03-14 04:41:37 13964

原创 Thread Local的原理与适用场景

本文章来源于:<https://github.com/Zeb-D/my-review> ,请star 强力支持,你的支持,就是我的动力。Thread Local 的原理与实现方法,并分析了其适用场景。http://www.jasongj.com/java/threadlocal/https://juejin.im/post/5c805cb9f265da2d9e177f6d...

2019-03-14 04:41:37 13062

原创 kafka之写入一致性分析

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景对于Kafka这方面的集群了解越发迷茫,结合Kafka 高并发写入数据,自己心里有个疑问:kafka的集群是怎么架构的,分布式存储是什么样的?等等自己会默默的比对一下其它中间件在 集群方面的一致性方面的处理,如ZK的ZAB协议集群内数据一致性的...

2019-03-14 04:41:37 13332

原创 kafka之高并发写入分析

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景基于上篇文章消息队列之主要MQ熟悉,这篇文章主要围绕当前主流MQ中间件的业务技术选型;对于kafka,我们一般会用于大批量数据处理如日志上报等,我们也了解过kafka数据流向图,这里将的是生产者如何往Kafka broker丢数据;此时我们可...

2019-03-13 15:59:54 13128

原创 java中Hashtable分析

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]Hashtable注意是Hashtable不是HashTable(t为小写),这不是违背了驼峰定理了嘛?这还得从Hashtable的出生说起,Hashtable是在Java1.0的时候创建的,而集合的统一规范命名是在后来的Java2开始约定的,而当时...

2019-03-10 14:10:37 13212

原创 Java7-8下的HashMap与ConcurrentHashMap

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]Java7/8 下 HashMap 与 ConcurrentHashMap网上关于 HashMap 和 ConcurrentHashMap 的文章确实不少,不过有很多没那么全面,自己也写一篇,把细节说清楚说透,尤其像 Java8 中的 Concurr...

2019-03-10 14:10:37 13032

原创 Nginx之集群Proxy

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景如今分布式、微服务各种名词兴起与尝试,但这其中带来的各种治理是非常痛苦的;特别是用户群体的暴增,导致服务端与各种中间件的IO链接数不够,虽然我们服务加了节点,但是存储方面如mongdb 经常会在某些时候,导致我们线上服务经常报数据源不够;经过...

2019-03-09 14:33:09 13293

原创 redis之集群运维总结

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]序本篇文章只在总结平时线上关于redis发生一些有趣的事情总结,不单单是当前公司,也可是个人与别人交流过权且记录;阅读本篇文章前,你可能需要了解一些关于 redis 集群原理,一些redis备份方式等一些知识;背景比较流行的 Nosql 技术之...

2019-03-09 14:33:09 13284

原创 Redis之集群原理分析

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]提问对于另外一个进程提供的服务,我们如何进行保证这个进程一直提供着是我们期望的服务 即高可用,在高可用的基础上如何保证高并发呢?对于来说Redis 来说,你除了知道redis能做什么,一些基本的api认识,还顺便摸透了一些基本使用及优化,那么接下来...

2019-03-09 14:33:09 13154

原创 Redis基础、高级使用、调优

[TOC]本文将从Redis的基本特性入手,通过讲述Redis的数据结构和主要命令对Redis的基本能力进行直观介绍。之后概览Redis提供的高级能力,并在部署、维护、性能调优等多个方面进行更深入的介绍和指导。本文适合使用Redis的普通开发人员,以及对Redis进行选型、架构设计和性能调优的架构设计人员。目录概述Redis的数据结构和相关常用命令数据持久化内存管理与数据淘汰机制...

2019-03-09 14:33:09 13206

原创 负载均衡之入门解释

负载均衡之入门解释参考链接:https://juejin.im/post/5b39eea0e51d4558c1010e36概念负载均衡是高可用架构的一个关键组件,主要用来提高性能和可用性,通过负载均衡将流量分发到多个服务器,同时多服务器能够消除这部分的单点故障。这部分的单点故障可以通过引入负载均衡器和至少另一个Web Server来缓解。一般来说所有后端服务器会提供相同的内容,以便用户无...

2019-03-09 14:33:09 13155

原创 sql之练习题

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]基本表结构:student(sno,sname,sage,ssex)学生表course(cno,cname,tno) 课程表sc(sno,cno,score) 成绩表teacher(tno,tname) 教师表1、查询课程1的成绩比课程2的...

2019-03-05 15:50:35 13094

原创 MySQL之MYISAM和INODB

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]Mysql之MYISAM、INODB的区别MySQL存储引擎背景:数据库中的存储引擎其实是对使用了该引擎的表进行某种设置,数据库中的表设定了什么存储引擎,那么该表在数据存储方式、数据更新方式、数据查询性能以及是否支持索引等方面就会有不同的“效果”。...

2019-03-05 15:50:35 13179

原创 MySQL之基本常识

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]存储过程优点:能够将代码封装起来保存在数据库之中让编程语言进行调用存储过程是一个预编译的代码块,执行效率比较高一个存储过程替代大量T_SQL语句 ,可以降低网络通信量,提高通信速率缺点:每个数据库的存储过程语法几乎都不一样,十分难...

2019-03-05 15:50:35 13116

原创 设计模式六大设计原则

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]单一职责原则单一职责原则是最简单的面向对象设计原则,它用于控制类的粒度大小。单一职责原则定义如下:单一职责原则(Single Responsibility Principle, SRP):一个类只负责一个功能领域中的相应职责,或者可以定义为:就一...

2019-03-05 03:53:05 13168

原创 消息队列之主要MQ熟悉

分布式之消息队列复习[TOC]复习要点本文大概围绕如下几点进行阐述:为什么使用消息队列?使用消息队列有什么缺点?消息队列如何选型?如何保证消息队列是高可用的?如何保证消息不被重复消费?如何保证消费的可靠性传输?如何保证消息的顺序性?我们围绕以上七点进行阐述。需要说明一下,本文不是《消息队列从入门到精通》这种课程,因此只是提供一个复习思路,而不是去教你们怎么调用消息队列的A...

2019-03-05 01:55:18 13227

原创 Java集合类中的Iterator和ListIterator的区别

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。Java之集合遍历器分析最近看到集合类,知道凡是实现了Collection接口的集合类,都有一个Iterator方法,用于返回一个实现了Iterator接口的对象,用于遍历集合;(Iterator接口定义了3个方法分别是hasNext(),next(),remo...

2019-03-04 15:45:17 13157

原创 Eureka和Zookeeper比较

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]平时经常用到的服务发现的产品进行下特性的对比,首先看下结论:FeatureConsulzookeeperetcdeuerka服务健康检查服务状态,内存,硬盘等(弱)长连接,keepalive连接心跳可配支持多数据...

2019-02-22 11:21:42 13239

原创 JVM之final分析

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景使用 final 方法的原因有两个。第一个原因是把方法、属性、类锁定,以防任何继承类修改它的含义;第二个原因是效率。在早期的Java实现版本中,会将final方法转为内嵌调用。但是如果方法过于庞大,可能看不到内嵌调用带来的任何性能提升。在最...

2019-01-29 01:30:15 13567

原创 ZAB协议

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。##ZAB协议介绍ZAB ( ZooKeeper Atomic Broadcast , ZooKeeper 原子消息广播协议)是zookeeper数据一致性的核心算法。ZAB 协议并不像 Paxos 算法那样,是一种通用的分布式一致性算法,它是一种特别为 Zo...

2019-01-29 01:30:15 13247

原创 ZAB与Paxos

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景学习了一些分布式理论,特别是一些围绕着cap理论的三大特性的算法,重点学习了zk上的ZAB协议和少数服从多数算法PAXOS算法,当然还有其它算法不在这里讨论如raft,包括数据一致性算法如Quorum 和Clock 算法 接下来初步总结下ZAB...

2019-01-29 01:30:15 13399

原创 什么是PAXOS

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景下面介绍Paxos 协议,它是一个比两阶段提交要轻量的保证一致性的协议。在分布式系统中,节点之间的信息交换有两种方式,一种是通过共享内存共用一份数据;另一种是通过消息投递来完成信息的传递。而在分布式系统中,通过消息投递的方式会遇到很多意外...

2019-01-29 01:30:15 13336

原创 Redis之Vs Memcached

面试官会问问你 redis 和 memcached 的区别,但是 memcached 是早些年各大互联网公司常用的缓存方案,但是现在近几年基本都是 redis,没什么公司用 memcached 了。redis 和 memcached 有啥区别?redis 支持复杂的数据结构redis 相比 memcached 来说,拥有更多的数据结构,能支持更丰富的数据操作。如果需要缓存能够支持更复杂的结构...

2019-01-29 01:30:15 13429

原创 集群内数据一致性的算法

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]集群内数据一致性算法关于集群内数据的一致性我们通过Quorum 和Clock 算法来具体讲解一下,亚马逊Dynamo 的论文中对Quorum 和Clock 有比较详细的介绍。Quorum先来看Quorum ,它是用来权衡分布式系统中数据一致性和...

2019-01-29 01:30:15 13597

原创 搜索引擎选择:Elasticsearch与Solr

Solr vs. ElasticsearchApache SolrApache Solr基于业界大名鼎鼎的java开源搜索引擎Lucene,Lucene更多的是一个软件包,还不能称之为搜索引擎,而solr则完成对lucene的封装,是一个真正意义上的搜索引擎框架。在过去的十年里,solr发展壮大,拥有广泛的用户群体。solr提供分布式索引、分片、副本集、负载均衡和自动故障转移和恢复功能。如果...

2019-01-29 01:30:15 13239

原创 redis持久化方式

redis两种持久化方式的优缺点redis两种持久化的方式RDB持久化可以在指定的时间间隔内生成数据集的时间点快照AOF持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集,AOF文件中全部以redis协议的格式来保存,新命令会被追加到文件的末尾,redis还可以在后台对AOF文件进行重写,文件的体积不会超出保存数据集状态所需要的实际大小,r...

2019-01-22 12:15:18 13047

原创 Redis之redis能干什么

最近阅读了《redis设计与实现》,这是一本比较枯燥的书,毕竟涉及到redis底层数据结构。我写本文章的目的,主要围绕redis设计与实现这本书整体的一个印象,然后梳理了这次思路:为什么要选择Redis:介绍Redis的使用场景与使用Redis的原因;Redis常用命令总结:包括时间复杂度总结与具体数据类型在Redis内部使用的数据结构;Redis的高级功能:包括持久化、复制、哨兵、集群介...

2019-01-22 12:15:18 13353

原创 ElasticSearch之查询性能分析

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]提问面对着这么一个庞然大物,我们除了代码API写的六、知道一些ElasticSearch入门介绍外,有时候我这个人挺会怀疑我自己用到别人的代码或者框架,但是自己又写不出来,没办法只好啃源码。说白了,任何程序运行要如何达到你期待的效果,这是一个漫长的...

2019-01-18 06:30:51 13602

原创 ElasticSearch之插入原理分析

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]提问为什么es在查询的时候,流程是这么相对简单些,因为查询的时候这数据基本是按照某种顺序存放的,所以在插入的时候会相对复杂些;es 写入数据的工作原理是什么?es 查询数据的工作原理是什么?见上片文章底层的 lucene 是什么?倒排索引了...

2019-01-18 06:30:51 13431

原创 ElasticSearch之入门解释

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]可能我们道听旁听过或使用过ElasticSearch ,我们可能对ES的使用api非常熟悉,但我们对这个ES这个黑盒知多少呢?背景在搜索这块,lucene 是最流行的搜索库。几年前业内一般都问,你了解 lucene 吗?你知道倒排索引的原理吗?现在...

2019-01-09 05:03:33 13296

原创 awk 入门指南

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景awk是处理文本文件的一个应用程序,几乎所有 Linux 系统都自带这个程序。它依次处理文件的每一行,并读取里面的每一个字段。对于日志、CSV 那样的每行格式相同的文本文件,awk可能是最方便的工具。awk其实不仅仅是工具软件,还是一种编程语...

2019-01-08 05:09:29 13841

原创 JVM之synchronized深入分析

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]synchronizedJVM 是通过进入和退出对象监视器来实现同步的。Java 中的每一个对象都可以作为锁。对于普通同步方法,锁是当前实例对象对于静态同步方法,锁是当前类的Class对象对于同步代码块,锁是synchronized括号里配置...

2019-01-07 01:51:35 13220

原创 JVM之内存模型与与内存屏障

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景在jvm的世界里,是什么导致了并发编程的困难,或者我们总是会去关注性能与安全?java并发编程,你要掌握它就必须知道通常有几个关键的点:线程之间如何通信线程之间如何同步线程可以说是并发活动的实体,而通信、同步则是它们的活动,就比如...

2019-01-07 01:51:35 13292

原创 查看服务器性能负载之命令

查看服务器性能负载的常用工具下面对查看服务器性能负载的常用工具做简单介绍,详细的工具使用请另行查阅。1、查看CPU的性能负载a)uptime用于观察服务器整体负载,系统负载指运行队列(1分钟、5分钟、15分钟前)的平均长度, 正常情况需要小于cpu个数。b)vmstatvmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存、进程...

2018-12-29 06:09:27 13764

原创 StampedLock 深入分析

本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。[TOC]背景自从看了AQS相关的类后,特别看了ReentrantReadWriteLock源码后,都感受到自己在并发编程越发迷茫,回归正传吧,看了ReentrantReadWriteLock源码给我的感受:使得多个读线程同时持有读锁(只要写锁未被占用),而...

2018-12-18 12:54:47 13387

Java设计模式共23种设计模式

23种Java设计模式;想获取更多的代码可在本人资源库下载;本来想免费分享的,可有时候需要下载别人的需要点积分,望了解

2017-05-23

SSH框架整合需要的Jar包

里面包括了struts-2.3.28、spring-framework-4.0.4.RELEASE-dist、hibernate-release-4.3.5.Final,这些Jar是从这里整合的,如果需要详细的单个框架的Jar包,请从官网下

2016-08-23

Jsp/Servlet3.0 ppt和代码

个人博客http://blog.csdn.net/u014229282/article/details/73928680,相关重点讲解,以代码为主

2017-06-30

SSH框架项目

个人博客,整合SSH框架时,所用的项目

2016-08-23

Redis实战-带目录完整版.pdf

Redis实战pdf,带完整版的结果目录,carlson 著,黄健宏 译;本书一共由三个部分组成。第一部分对Redis进行了介 绍,说明了Redis的基本使用方法、它拥有的5种数据结构以及操作这5种数据结构的命令,并讲解了如何使用Redis去构建文章展示网站、cookie、购物车、网页缓存、数据库行缓存等一系列程序。第二部分对Redis命令进行了更详细的介绍,并展示了如何使用Redis去构建更为复杂的辅助工具和应用程序,并在最后展示了如何使用Redis去构建一个简单的社交网站。第三部分对Redis用户经常会遇到的一些问题进行了介绍,讲解了降低Redis内存占用的方法、扩展Redis性能的方法以及使用Lua语言...

2017-09-05

班级管理系统模板

班级管理系统模板

2014-09-28

网上书店系统源码

ASP网上书店系统源码

2016-03-31

计算器源码

已实现+ - 清零 你还可以继续实现 * /

2015-05-27

数据结构-清华大学严蔚敏PPT.

教材:《数据结构 C语言版 》 严蔚敏 吴伟民 编 著 清华大学出版社 参考文献: 1 《数据结构》 张选平 雷咏梅 编 严蔚敏 审 机械工业出版社 2 《数据结构与算法分析》 Clifford A Shaffer著 张 铭 刘晓丹 译 电子工业出版社 3 《数据结构习题与解析 C语实言版 》 李春葆 清华大学出版社 4 《数据结构与算法》 夏克俭 编著 国防工业出版社 ">教材:《数据结构 C语言版 》 严蔚敏 吴伟民 编 著 清华大学出版社 参考文献: 1 《数据结构》 张选平 雷咏梅 编 严蔚敏 审 机械工业出版社 2 《数据结构与算法分析》 Clifford A Shaffer著 [更多]

2014-09-28

网上书城系统代码及开发流程

网上书城系统的整个开发流程

2016-03-31

HTTP权威指南高清中文版.pdf

本书包含21 章,分为5 个逻辑部分(每部分都是一个技术专题),以及8 个很有用 的附录,这些附录包含了参考资料,以及对相关技术的介绍。 第一部分 HTTP:Web 的基础 第二部分 HTTP 结构 第三部分 识别、认证与安全 第四部分 实体、编码和国际化 第五部分 内容发布与分发 第六部分 附录

2017-09-30

MySQL技术内幕(第4版).pdf

第一部分 MySQL基础知识 1 第1章 MySQL和SQL 入门 2 1.1 MySQL的用途 2 1.2 示例数据库 4 1.2.1 “美国历史研究会”场景 5 1.2.2 考试记分项目 7 1.2.3 关于示例数据库的说明 7 1.3 数据库基本术语 7 1.3.1 数据库的组织结构 8 1.3.2 数据库查询语言 10 1.3.3 MySQL的体系结构 1 0 1.4 MySQL 11 1.4.1 如何获得示例数据库 12 1.4.2 最低配置要求 12 1.4.3 如何建立和断开与服务器的连接 13 1.4.4 执行SQL语句 15 1.4.5 创建数据库 17 1.4.6 创建数据表 18 1.4.7 如何添加新的数据行 33 1.4.8 将sampdb数据库重设为原来的状态 36 1.4.9 检索信息 37 1.4.10 如何删除或更新现有的数据行 64 1.5 与客户程序MySQL交互的技巧 66 1.5.1 简化连接过程 67 1.5.2 减少输入查询命令时的打字动作 69 1.6 后面各章的学习计划 72 第2章 使用SQL管理数据 73 2.1 MySQL服务器的SQL模式 73 2.2 MySQL标识符语法和命名规则 74 2.3 SQL语句中的字母大小写问题  77 2.4 字符集支持 78 2.4.1 字符集的设定 79 2.4.2 确定可供选用的字符集和当前设置 80 2.4.3  Unicode支持 81 2.5  数据库的选定、创建、删除和变更 82 2.5.1 数据库的选定 82 2.5.2 数据库的创建 82 2.5.3 数据库的删除 83 2.5.4 数据库的变更 83 2.6 数据表的创建、删除、索引和变更 84 2.6.1 存储引擎的特征 84 2.6.2 创建数据表 90 2.6.3 删除数据表 101 2.6.4 为数据表编制索引 101 2.6.5 改变数据表的结构 106 2.7 获取数据库的元数据 108 2.7.1 用SHOW语句获取元数据 109 2.7.2 从INFORMATION_SCHEMA数据库获取元数据 110 2.7.3 从命令行获取元数据 112 2.8 利用联结操作对多个数据表进行检索 113 2.8.1 内联结 114 2.8.2 避免歧义:如何在联结操作中给出数据列的名字 116 2.8.3 左联结和右联结(外联结) 116 2.9 用子查询进行多数据表检索 120 2.9.1 子查询与关系比较操作符 121 2.9.2 IN和NOT IN子查询 122 2.9.3 ALL、ANY和SOME子查询 123 2.9.4 EXISTS和NOT EXISTS子查询 124 2.9.5 与主查询相关的子查询 124 2.9.6 FROM子句中的子查询 124 2.9.7 把子查询改写为联结查询 125 2.10 用UNION语句进行多数据表检索 126 2.11 使用视图 129 2.12 涉及多个数据表的删除和更新操作 133 2.13 事务处理 134 2.13.1 利用事务来保证语句的安全执行 135 2.13.2 使用事务保存点 139 2.13.3 事务的隔离性 139 2.13.4 事务问题的非事务解决方案 140 2.14 外键和引用完整性 143 2.14.1 外键的创建和使用 144 2.14.2 如果不能使用外键该怎么办 149 2.15 使用FULLTEXT索引 150 2.15.1 全文搜索:自然语言模式 151 2.15.2 全文搜索:布尔模式 153 2.15.3 全文搜索:查询扩展模式 154 2.15.4 配置全文搜索引擎 155 第3章 数据类型 156 3.1 数据值的类别 157 3.1.1 数值 157 3.1.2 字符串值 158 3.1.3 日期/时间值 166 3.1.4 坐标值 166 3.1.5 布尔值 166 3.1.6 空值NULL 166 3.2 MySQL的数据类型 166 3.2.1 数据类型概述 167 3.2.2 数据表中的特殊列类型 168 3.2.3 指定列默认值 169 3.2.4 数值数据类型 170 3.2.5 字符串数据类型 176 3.2.6 日期/时间数据类型 189 3.2.7 空间数据类型 196 3.3 MySQL如何处理非法数据值 197 3.4 序列 199 3.4.1 通用AUTO_INCREMENT属性 199 3.4.2 与特定存储引擎有关的AUTO_INCREMENT属性 201 3.4.3 使用AUTO_INCREMENT数据列时的要点 203 3.4.4 使用AUTO_INCREMENT机制时的注意事项 204 3.4.5 如何在不使用AUTO_INCREMENT的情况下生成序列编号 205 3.5 表达式求值和类型转换 207 3.5.1 表达式的编写 207 3.5.2 类型转换 213 3.6 数据类型的选用 220 3.6.1 数据列将容纳什么样的数据 222 3.6.2 数据是否都在某个特定的区间内 224 3.6.3 与挑选数据类型有关的问题是相互影响的 225 第4章 存储程序 227 4.1 复合语句和语句分隔符 228 4.2 存储函数和存储过程 229 4.2.1 存储函数和存储过程的权限 231 4.2.2 存储过程的参数类型 232 4.3 触发器 233 4.4 事件 234 4.5 存储程序和视图的安全性 236 第5章 查询优化 237 5.1 使用索引 237 5.1.1 索引的优点 238 5.1.2 索引的缺点 240 5.1.3 挑选索引 241 5.2 MySQL的查询优化程序 243 5.2.1 查询优化器的工作原理 244 5.2.2 用EXPLAIN 语句检查优化器操作 247 5.3 为提高查询效率而挑选数据类型 252 5.4 有效加载数据 255 5.5 调度和锁定问题 258 5.5.1 改变语句的执行优先级 259 5.5.2 使用延迟插入 259 5.5.3 使用并发插入 260 5.5.4 锁定级别与并发性 260 5.6 系统管理员所完成的优化 261 5.6.1 使用MyISAM键缓存 263 5.6.2 使用查询缓存 264 5.6.3 硬件优化 265 第二部 分 MySQL的编程接口 267 第6章 MySQL程序设计 268 6.1 为什么要自己编写MySQL程序 268 6.2 MySQL应用程序可用的API 271 6.2.1 C API 272 6.2.2 Perl DBI API 272 6.2.3 PHP API 274 6.3 如何挑选API 275 6.3.1 执行环境 275 6.3.2 性能 276 6.3.3 开发时间 278 6.3.4 可移植性 280 第7章 用C语言编写MySQL程序 281 7.1 编译和链接客户程序 282 7.2 连接到服务器 284 7.3 出错消息和命令行选项的处理 287 7.3.1 出错检查 287 7.3.2 实时获取连接参数 290 7.3.3 给MySQL客户程序增加选项处理功能 301 7.4 处理SQL语句 305 7.4.1 处理修改数据行的语句 306 7.4.2 处理有结果集的语句 307 7.4.3 一个通用的语句处理程序 310 7.4.4 另一种语句处理方案 311 7.4.5 mysql_store_result()与mysql_use_result()函数的对比 312 7.4.6 使用结果集元数据 314 7.4.7 对特殊字符和二进制数据进行编码 319 7.5 交互式语句执行程序 322 7.6 怎样编写具备SSL支持的客户程序 323 7.7 嵌入式服务器库的使用 327 7.7.1 编写内建了服务器的应用程序 328 7.7.2 生成应用程序可执行二进制文件 330 7.8 一次执行多条语句 331 7.9 使用服务器端预处理语句 333 第8章 使用Perl DBI编写MySQL程序 343 8.1 Perl脚本的特点 343 8.2 Perl DBI概述 344 8.2.1 DBI数据类型 344 8.2.2 一个简单的DBI脚本 345 8.2.3 出错处理 349 8.2.4 处理修改数据行的语句 352 8.2.5 处理返回结果集的语句 353 8.2.6 在语句字符串引用特殊字符 361 8.2.7 占位符与预处理语句 363 8.2.8 把查询结果绑定到脚本变量 365 8.2.9 设定连接参数 366 8.2.10 调试 369 8.2.11 使用结果集的元数据 372 8.2.12 实现事务处理 376 8.3 DBI脚本实战 377 8.3.1 生成美国历史研究会会员名录 377 8.3.2 发出会费催交通知 382 8.3.3 会员记录项的编辑修改 387 8.3.4 寻找志趣相同的会员 392 8.3.5 把会员名录放到网上 393 8.4 用DBI开发Web应用 396 8.4.1 配置Apache服务器使用CGI脚本 397 8.4.2 CGI.pm模块简介 398 8.4.3 从Web脚本连接MySQL服务器 404 8.4.4 一个基于Web的数据库浏览器 406 8.4.5 考试记分项目:考试分数浏览器 410 8.4.6 美国历史研究会:寻找志趣相同的会员 413 第9章 用PHP编写MySQL程序 418 9.1 PHP概述 419 9.1.1 一个简单的PHP脚本 421 9.1.2 利用PHP库文件实现代码封装 424 9.1.3 简单的数据检索页面 428 9.1.4 处理语句结果 431 9.1.5 测试查询结果里的NULL值 434 9.1.6 使用预处理语句 434 9.1.7 利用占位符来处理带引号的数据值 435 9.1.8 出错处理 437 9.2 PHP脚本实战 438 9.2.1 考试分数的在线录入 438 9.2.2 创建一个交互式在线测验 449 9.2.3 美国历史研究会:会员个人资料的在线修改 454 第三部分 MySQL的系统管理 461 第10章 MySQL系统管理简介 462 10.1 MySQL组件 462 10.2 常规管理 463 10.3 访问控制与安全性 464 10.4 数据库的维护、备份和复制 464 第11章 MySQL的数据目录 466 11.1 数据目录的位置 466 11.2 数据目录的层次结构 468 11.2.1 MySQL服务器如何提供对数据的访问 468 11.2.2 MySQL数据库在文件系统里是如何表示的 469 11.2.3 数据表在文件系统里的表示方式 470 11.2.4 视图和触发器在文件系统里的表示方式 471 11.2.5 SQL语句与数据表文件操作的对应关系 472 11.2.6 操作系统对数据库对象的命名规则有何影响 472 11.2.7 影响数据表最大长度的因素 474 11.2.8 数据目录的结构对系统性能的影响 475 11.2.9 MySQL状态文件和日志文件 477 11.3 重新安置数据目录的内容 479 11.3.1 重新安置工作的具体方法 479 11.3.2 重新安置注意事项 480 11.3.3 评估重新安置的效果 480 11.3.4 重新安置整个数据目录 481 11.3.5 重新安置各个数据库 481 11.3.6 重新安置各个数据表 482 11.3.7 重新安置InnoDB共享表空间 482 11.3.8 重新安置状态文件和日志文件 482 第12章 MySQL数据库系统的日常管理 484 12.1 安装MySQL软件后的初始安防设置 484 12.1.1 为初始MySQL账户设置口令 485 12.1.2 为第二个服务器设置口令 489 12.2 安排MySQL服务器的启动和关停 489 12.2.1 在Unix上运行MySQL服务器 489 12.2.2 在Windows上运行MySQL服务器 493 12.2.3 指定服务器启动选项 495 12.2.4 关闭服务器 497 12.2.5 当你未能连接至服务器时重新获得服务器的控制 497 12.3 对MySQL服务器的连接监听情况进行控制 499 12.4 管理MySQL用户账户 500 12.4.1 高级MySQL账户管理操作 501 12.4.2 对账户授权 503 12.4.3 查看账户的权限 510 12.4.4 撤销权限和删除用户 510 12.4.5 改变口令或重新设置丢失的口令 511 12.5 维护日志文件 512 12.5.1 出错日志 514 12.5.2 常规查询日志 515 12.5.3 慢查询日志 515 12.5.4 二进制日志和二进制日志索引文件 516 12.5.5 中继日志和中继日志索引文件 517 12.5.6 日志数据表的使用 518 12.5.7 日志管理 519 12.6 调整MySQL服务器 524 12.6.1 查看和设置系统变量的值 525 12.6.2 通用型系统变量 528 12.6.3 查看状态变量的值 530 12.7 存储引擎的配置 531 12.7.1 为MySQL服务器挑选存储引擎 531 12.7.2 配置MyISAM存储引擎 533 12.7.3 配置InnoDB存储引擎 536 12.7.4 配置Falcon存储引擎 541 12.8 启用或者禁用LOAD DATA语句的LOCAL能力 541 12.9 国际化和本地化问题 542 12.9.1 设置MySQL服务器的地理时区 542 12.9.2 选择用来显示出错信息的语言 544 12.9.3 配置MySQL服务器的字符集支持 544 12.10 运行多个服务器 545 12.10.1 运行多个服务器的问题 545 12.10.2 配置和编译不同的服务器 547 12.10.3 指定启动选项的决策 548 12.10.4 用于服务器管理的mysqld_multi 549 12.10.5 在Windows系统上运行多个MySQL服务器 550 12.11 升 级MySQL 553 第13章 访问控件和安全 555 13.1 内部安全性:防止未经授权的文件系统访问 555 13.1.1 如何偷取数据 556 13.1.2 保护你的MySQL安装 557 13.2 外部安全性:防止未经授权的网络访问 562 13.2.1 MySQL权限表的结构和内容 562 13.2.2 服务器如何控制客户访问 568 13.2.3 一个关于权限的难题 572 13.2.4 应该回避的权限数据表风险 575 13.3 加密连接的建立 577 第14章 MySQL数据库的维护、备份和复制 582 14.1 数据库预防性维护工作的基本原则 582 14.2  在MySQL服务器运行时维护数据库 583 14.2.1 以只读方式或读/写方式锁定一个或多个数据表 584 14.2.2 以只读方式锁定所有的数据库 586 14.3 预防性维护 587 14.3.1 充分利用MySQL服务器的自动恢复能力 587 14.3.2 定期进行预防性维护 588 14.4 制作数据库备份 589 14.4.1 用mysqldump程序制作文本备份 590 14.4.2 制作二进制数据库备份 593 14.4.3 备份InnoDB或Faclcon数据表 595 14.5 把数据库复制到另一个服务器 596 14.5.1 使用一个备份文件来复制数据库 596 14.5.2 把数据库从一个服务器复制到另一个 597 14.6 数据表的检查和修复 598 14.6.1 用服务器检查和修复数据表 599 14.6.2 用mysqlcheck程序检查和修复数据表 599 14.6.3 用myisamchk程序检查和修复数据表 600 14.7 使用备份进行数据恢复  603 14.7.1 恢复整个数据库 603 14.7.2 恢复数据表 604 14.7.3 重新执行二进制日志文件里的语句 605 14.7.4 InnoDB存储引擎的自动恢复功能 606 14.8 设置复制服务器 607 14.8.1 复制机制的工作原理 607 14.8.2 建立主从复制关系 609 14.8.3 二进制日志的格式 611 14.8.4 使用复制机制制作备份 612 第四部分 附录 613 附录A 获得并安装有关软件 614 附录B 数据类型指南 630 附录C 操作符与函数用法指南 643 附录D 系统变量、状态变量和用户变量使用指南 705 附录E SQL语法指南 746 附录F MySQL程序指南 823 附录G API指南 887 附录H Perl DBI API指南 930 附录I PHP API指南 953

2017-10-11

maven-nexus-oss-webapp-1.7.2-bundle.rar

nexus-oss-webapp-1.7.2-bundle.rar,Maven实战,第9章,建立Maven私服仓库软件Nexus

2017-04-27

窗口抖动源码

简单实现 窗口抖动,改Android源码 较一看就懂,简单

2015-05-27

urlrewritefilter-4.0.3.jar

使用URL Rewrite 实现网站伪静态

2016-03-29

SSH三大框架整合jar包

三大框架整合(Struts2+Hibernate+Spring4)所需要的jar包,使用详情请关注本人博客之SSH三大框架整合

2016-04-10

Java设计模式-详细代码

23种Java设计详细代码,对应的设计模式的代码在对应的Package中,可结合本人的ppt更好的了解http://download.csdn.net/detail/u014229282/9850238

2017-05-23

Maven-hibernate4

环境:Maven2.2、 hibernate4、Mysql5.6;开始先建个数据库,<property name="hibernate.hbm2ddl.auto">update</property>这里先改为create可以手动创建表 执行Test,然后再改回来(不然会报错).项目比较简单,没有分层式。

2017-05-26

空空如也

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

TA关注的人

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