-
XShell设置最大的显示行数
xshell默认显示的日志行数略少。有时候需要根据xshell显示的日志找bug,显示的日志数量太少,不太方便。需要设置下xshell的显示的日志行数,调整为显示较多内容:打开xshell,一次选择菜单:文件-》属性,找到终端。这时候看到xshell默认显示的行数为1024行。确实略小。把这个数值改大一些即可。比如:102400。这时候再查看日志的时候,就可以看到更详细的内容了。11,034 0 2018-01-17 10:20
-
自己写一个最简单的数据库
所有应用软件之中,数据库可能是最复杂的。Mysql的手册有3000多页,PostgreSQL的手册有2000多页,Oracle的手册更是比它们相加还要厚。 但是,自己写一个最简单的数据库,做起来并不难。Reddit上面有一个帖子,只用了几百个字,就把原理讲清楚了。一、数据以文本形式保存 第一步,就是将所要保存的数据,写入文......5,342 0 2018-01-16 17:09
-
《数据库系统实现》(第二版)pdf资源下载(备份)
4,558 0 2018-01-16 15:35
-
Mysql执行查询的原理【转载】
可以用一张网上找的图片来描述:从图中可以看出基本步骤为:1、客户端发送一条查询给服务器。2、服务器先检查查询缓存,如果命中了缓存,则立刻返回存储在缓存中的结果。否则进入下一阶段。3、服务器端进行SQL解析,预处理,再由优化器生成对应的执行计划4、MySql根据优化器生成的执行计划,调用存储引擎的API执行查询。5、返回结果给客户端。MySQL客户端/服务器通信协议MySQL客户端和服务器之间的通信......1,613 0 2018-01-16 14:56
-
二叉树典型:递归打印某个文件夹下的所有文件以及文件夹
二叉树的以前还在学校的时候开始接触的了,不过一直做的工作都跟数据结构/算法没多大的关系,所以一直没能应用。最近在研究一些索引原理方面的内容,其中接触到不少数据结构的内容。这里先贴一下这个二叉树搜索的实现:/***CreatedbyNemoon2018/1/11.*/publicclassBinaryTreeTest{privateStringbasePath="E:/";@Testpublicvo......2,463 0 2018-01-11 17:32
-
MySQL索引背后的数据结构及算法原理【转载】
最近在研究索引的算法以及数据结构一类的东西。看完这篇文章后,收获颇多。另外推荐下CodingLabs这个博客,在看了这篇文章后,我陆陆续续浏览了上面的一些其他文章,干货不少,而且作者本身也非常牛逼~原文地址:http://blog.codinglabs.org/articles/theory-of-mysql-index.html摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题......4,283 0 2018-01-11 14:34
-
基于XML - 简单模仿mongodb实现一个数据库
源码寄存在GitHub仓库,地址为:https://github.com/geeeeeeeeeeeeeeeek/NemoMiniDb-XML这是一个简单模仿mongodb的数据库程序,底层数据存储的是XML文件,而不是JSON。该程序只用于学习用途。目前功能比较简单,不考虑多用户,不考虑多线程,不考虑效率,不考虑资源占用......只简单实现增删改查操作。后续如果有时间,需要继续完善,目前暂时先这3,254 0 2018-01-11 14:08
-
简单模仿mongodb实现一个数据库
源码寄存在GitHub,地址是:https://github.com/geeeeeeeeeeeeeeeek/NemoMiniDb这是一个简单模仿mongodb的数据库程序。该程序只用于学习用途。目前功能比较简单,不考虑多用户,不考虑多线程,不考虑效率,不考虑资源占用......只简单实现增删改查操作。后续如果有时间,需要继续完善,目前暂时先这样了。详细说明待添加,先占个位置,待续...3,486 0 2018-01-10 18:57
-
关于分布式系统中事务相关简单探索
数据的原子性对于一个系统而言,重要性不言而喻。这里拿普遍的购物付款举个栗子: 你在淘宝上买了一件商品,结账的时候,其实淘宝会帮你处理两件事情: 1、从你的余额扣款。 2、添加你的购物订单。如......2,429 0 2018-01-05 15:45
-
Fiddler抓安卓/Iphone数据包教程
最近在做公司app的开发相关工作。所以一些情况下,需要诊断手机端发送和接收到的数据包。fiddler是一个不错抓包工具选择,之前一直也有在用它来做一些本地请求的转发,本地计算机网络请求监控一类的操作。它是一个强大的工具,这里只做一个简单的抓包记录。除了fiddler以外,也推荐charles,同样是一个神器。这就开始:1、在fiddler主界面选择Tools-->options.2、找到ht......2,997 0 2018-01-04 18:59
-
Mysql 基础架构分析
MySQL从概念上可以分为四层。从上到下分别为:接入层、服务层、存储引擎层、系统文件层。接入层:不同语言的客户端通过mysql的协议与mysql服务器进行连接通信,接入层进行权限验证、连接池管理、线程管理等。服务层:包括sql解析器、sql优化器、数据缓冲、缓存等。存储引擎层:mysql中存储引擎是基于表的。系统文件层:保存数据、索引、日志等。贴个图:4,545 0 2017-12-25 16:56
-
一些关于数据库事务的基本原则总结
事务:事务是一组原子性sql查询语句,被当作一个工作单元。若mysql对改事务单元内的所有sql语句都正常的执行完,则事务操作视为成功,所有的sql语句才对数据生效,若sql中任意不能执行或出错则事务操作失败,所有对数据的操作则无效(通过回滚恢复数据)。事务有四个属性:1、原子性:事务被认为不可分的一个工作单元,要么全部正常执行,要么全部不执行。2、一致性:事务操作对数据库总是从一种一致性的状态转......3,509 4 2017-12-25 16:40
-
NemoDao - 简单模仿mybatis实现一个持久层框架
嗯,这几天用稍稍闲散的时间模仿着mybatis写了一个简单的持久层框架。目前只有一些简单的操作,不过足以用来学习一些mybatis简单的原理了。这个项目的源码托管在github,地址为:https://github.com/NemoMeng/NemoDao可以先分析下我们在使用mybatis中做的一些工作:1、配置处理。2、写mapper。3、写dao接口,在需要的地方调用dao接口。这么着写这个......2,464 2 2017-12-22 18:39
-
JAVA-动态代理实现AOP原理简单探索
假设这样一个场景: 当我们在调用某些方法的时候,需要在调用方法前后,记录执行日志。 简单的做法肯定是在原业务方法的前后作修改,添加记录日志的代码。不过这肯定存在一些问题,比如,当你要记录日志的方法很多,或者偶尔需要修改记录日志的方法,等等。所以需要考虑在不对原有的业务方法产生影响的情况下,加入日志记录。 &n......3,674 0 2017-12-22 15:18
-
Websocket 探索
1、说到websocket,就不得不提一下他的前辈http了:熟悉http的童鞋应该都知道,HTTP是不支持持久连接的(长连接,循环连接的不算)。html5是指一系列新的api,Http协议本身只有1.0和1.1(其实http跟html好像也没啥关系哈),html5其实相当于是旧的htmlapi的一种补充。而WebSocket是HTML5出的东西。HTTP有所谓的keep-alive之说,也就是把......2,258 0 2017-12-19 11:03