- 博客(72)
- 资源 (26)
- 收藏
- 关注

原创 测试你对MySQL事务与隔离级别的理解的一道题
有如下表:create table t(a int)engine=innodb,charset=utf8有如下两个客户端:
2014-12-08 16:07:38
1950

原创 MySQL分组然后取每个分组中按照某些字段排序的topN条数据
MySQL分组然后取每个分组中按照某些字段排序的topN条数据建表CREATE TABLE `t` ( `a` int(11) DEFAULT NULL, `b` int(11) DEFAULT NULL, `c` int(11) DEFAULT NULL, `itime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UP
2014-12-04 19:41:42
7436
1

原创 MySQL InnoDB四个事务级别 与 脏读、不重复读、幻读
MySQL InnoDB事务的隔离级别有四级,默认是“可重复读”(REPEATABLE READ)。未提交读(READ UNCOMMITTED)。另一个事务修改了数据,但尚未提交,而本事务中的SELECT会读到这些未被提交的数据(脏读)。提交读(READ COMMITTED)。本事务读取到的是最新的数据(其他事务提交后的)。问题是,在同一个事务里,前后两次相同的SELECT会读到不同的
2014-05-26 19:32:10
12586
1

原创 Java不写文件,LOAD DATA LOCAL INFILE大批量导入数据到MySQL的实现
大家都知道当插入大批量数据MySQL的时候,MySQL使用load data local infile 从文件中导入数据比insert语句要快,MySQL文档上说要快20倍左右。但是这个方法有个缺点,就是导入数据之前,必须要有文件,也就是说从文件中导入。这样就需要去写文件,以及文件删除等维护。某些情况下,比如数据源并发的话,还会出现写文件并发问题,很难处理。那么有没有什么办法,可以
2013-07-03 20:50:15
17693
8
原创 HBase 2.0 新特性& HBaseCon Asia 2017 参会总结
本次会议是 Apache HBase 社区首届亚洲技术峰会,举办地在深圳,由华为主办,阿里巴巴、小米、烽火科技赞助支持。峰会吸引了300多名业界知名IT公司的 HBase 开发者参与,Apache HBase 项目管理委员会主席Michael Stack,多名 HBase 社区 PMC/Commiter 重量级成员,以及来自中国、美国、印度等国家的20多名 HBase 开发者发表了19场精
2017-09-18 12:12:10
3203
原创 使用nmon监控Linux 性能
使用nmon监控Linux 性能nmon是系统监控工具,可以提供CPU、Memory、网络、IO等监控。非常好用。安装:选择相应的版本下载: http://nmon.sourceforge.net/pmwiki.php?n=Site.Download 我的系统的centos6,下载的是:nmon15e_MPGinc_24_July_2015.tar.gz 安装 安装很简单,下载好安装包解压
2016-01-13 15:07:37
816
原创 Spring事务使用的一个误区
Spring bean 假设有如下类public class Service implement IService{@Transactional(readOnly = false, propagation=Propagation.REQUIRED) public void methodA(){ .....methodB()......
2014-12-09 20:56:44
2687
转载 Understanding Weak References(我见过的对Java引用解释最好的文章)
Understanding Weak ReferencesPosted by enicholas on May 4, 2006 at 5:06 PM PDTSome time ago I was interviewing candidates for a Senior Java Engineer position. Among the many questions I
2014-12-08 10:53:11
1004
转载 TCP/IP,http,socket,长连接,短连接——小结。
thomescai http://blog.youkuaiyun.com/thomescai(转载请保留)概要: 之前对这几个概念有点糊涂,查阅了些资料,稍微概括下他们的区别吧。如有错误,请拍~~~先看图:TCP/IP是什么? TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有IP协议、ICMP协议、ARP
2014-11-27 23:12:03
1026
转载 Java JDBC下执行SQL的不同方式、参数化预编译防御 相关学习资料 http://zh.wikipedia.org/wiki/Java数据库连接 http://lavasoft.blog.51
Java JDBC下执行SQL的不同方式、参数化预编译防御相关学习资料http://zh.wikipedia.org/wiki/Java数据库连接http://lavasoft.blog.51cto.com/62575/20588http://blog.youkuaiyun.com/cxwen78/article/details/6863696http://www.ibm
2014-10-15 11:20:18
1596
原创 给MySQL表增加指定位置的列
ALTER TABLE test ADD COLUMN id INT UNSIGNED NOT NULL auto_increment PRIMARY KEY FIRST给表添加列是一个常用的操作,MySQL增加列的时候可以指定此列的位置给指定位置加列需要两个关键字:FIRST和AFTERFIRST表示增加此列为第一个列AFTER表
2014-09-04 13:59:20
41015
原创 MySQL删除数据什么情况下会释放空间
今天被问 MySQL delete 以后磁盘空间什么时候释放。当时回答是:delete 以后释放。后来一想,总觉得好像说错了,以前在哪看到oracle的实现不是这样的。MySQL应该也大致相同于是就去测试了一下。结果果然不是这样的。对于MySQL delete以后并不会释放磁盘空间。而是看情况?下面就是我测试以后得出的几种情况:1、drop
2014-06-12 15:41:02
14921
转载 MySQL的timeout那点事
http://www.penglixun.com/tech/database/mysql_timeout.html本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.penglixun.com/tech/database/mysql_timeout.html因为最近遇到一些超时的问题,正好就
2014-06-04 17:26:59
1254
转载 误用autocommit引起的业务hang住
背景有用户报告一个普通的select 语句被hang住了,执行超时。查明之后发现是autocommit使用不当导致。这里将case简化,说明复现步骤及原因。复现session1 建表并插入数据:create table if not exists t(id int primary key, c int);set autocommit=0;insert i
2014-05-27 17:40:21
1098
转载 关于MySQL变量innodb_rollback_on_timeout一些讨论
作者:MrDB 出处:http://www.cnblogs.com/hustcat/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。关于MySQL变量innodb_rollback_on_timeout一些讨论1、innodb_rollback_on_timeout变量
2014-05-22 14:30:30
1961
转载 怎样编写高质量的java代码
代码质量概述 怎样辨别一个项目代码写得好还是坏?优秀的代码和腐化的代码区别在哪里?怎么让自己写的代码既漂亮又有生命力?接下来将对代码质量的问题进行一些粗略的介绍。也请有过代码质量相关经验的朋友提出宝贵的意见。 代码质量所涉及的5个方面,编码标准、代码重复、代码覆盖率、依赖项分析、复杂度分析。这5方面很大程序上决定了一份代码的质量高低。我们分别来看一下这5方面:
2014-03-20 09:16:05
1042
转载 名词王国里的死刑(翻译)
发现一篇关于函数式编程的文章和吐槽Java完全面对对象(名词)设计的文章,很有意思。就转载了过来。原文出处:转载自:http://lcwangchao.github.io/%E5%87%BD%E6%95%B0%E5%BC%8F%E7%BC%96%E7%A8%8B/2012/07/02/excution_in_the_kingdom_of_nouns/
2014-03-06 10:01:45
1912
转载 Google首席软件工程师Joshua Bloch谈如何设计一款优秀的API【转载】
摘要:API设计看似简单,其实里面的学问还不少,在整个设计流程中,一不小心就会陷入各种陷阱之中,给你带来后患无穷的危害。Joshua Bloch是Google的首席Java架构师,他在一篇PPT里向大家讲述了如何设计一款优秀的API。【编者按】随着近来软件规模的日益庞大,API编程接口的设计变的越来越重要。良好的接口设计可以降低系统各部分之间的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合度
2014-02-21 09:54:20
971
转载 十步完全理解SQL
十步完全理解SQL01/16. 2014很多程序员视 SQL 为洪水猛兽。SQL 是一种为数不多的声明性语言,它的运行方式完全不同于我们所熟知的命令行语言、面向对象的程序语言、甚至是函数语言(尽管有些人认为 SQL 语言也是一种函数式语言)。我们每天都在写 SQL 并且应用在开源软件 jOOQ 中。于是我想把 SQL 之美介绍给那些仍然对它头疼不已的朋友,所以本文是
2014-01-23 13:41:34
789
转载 Linux删除文件后没有释放空间
遇到一个线上问题,MySQL查询错误,经过定位是MySQL tmpdir 指定的/tmp空间满了。然后我删除了一个大问题,结果还是无法查询数据库。df -h看了一下,磁盘仍然被占满了。奇怪?文件被删除了?结果空间还是不释放。估计是被某个进程占用导致的,google了一下,看到这边文章非常不错,转了过来,做个笔记。文章出处:http://blog.youkuaiyun.com
2014-01-17 15:04:08
1709
转载 提高你的Java代码质量吧:推荐使用枚举定义常量
一、分析 常量的声明是每一个项目中不可或缺的,在Java1.5之前,我们只有两种方式的声明:类常量和接口常量。不过,在1.5版之后有了改进,即新增了一种常量声明方式,枚举常量。代码如下: [java] view plaincopyenum Season{ Spring,Summer,Autumn,Win
2014-01-10 14:38:10
990
转载 Linux下高并发socket最大连接数所受的各种限制
1、修改用户进程可打开文件数限制在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。可使用ulimit命令查看系统允许当前用户进程打开的文件数限制:
2013-12-26 16:59:43
977
转载 合理运用remapResults属性
转自:http://sinokaka.iteye.com/blog/39367Proper Usage of remapResults="true"The remapResults attribute is available on 【statement】, 【select】, and 【procedure】 mapped statements. It is an optional
2013-12-18 18:30:09
1019
转载 深入理解JDBC的超时设置
转自:http://www.importnew.com/2466.html ImportNew注: 本文由新浪微博:@哥墨迹 投稿至ImportNew。感谢 @哥墨迹 ! 如果你希望分享好的原创文章或者译文,欢迎投稿到ImportNew。恰当的JDBC超时设置能够有效地减少服务失效的时间。本文将对数据库的各种超时设置及其设置方法做介绍。 真实案例:应用服务器在遭到DDo
2013-12-17 10:29:43
1246
转载 Back of the Envelope Calculations
Back of the Envelope CalculationsOne of the best DBA questions I was ever asked in an interview, was to try and estimate required disk space for an application using a back-of-the-envelope calcula
2013-12-13 15:47:53
1774
转载 When does MySQL data get loaded in and out of cache?
When does MySQL data get loaded in and out of cache?A cold cache, or a poorly tuned cache can be responsible for a number of performance problems. If we look at the data and indexes of InnoDB, the
2013-12-13 10:28:46
863
转载 Fastest way to estimate rows in a table
Fastest way to estimate rows in a tableA friend wrote to me recently with a question. He was working on a method to ship application metrics to statsd on a 1 minute interval. He had three exampl
2013-12-13 09:59:30
909
原创 Quartz 使用(2.x版本)
Quartz三个要素:Job :实现 org.quartz.Job的execute 方法。编写需要执行的任务。需要封装成JobDetail与下面的trigger加入到scheduler中执行。Trigger:用于触发Job执行的触发器。Scheduler:执行计划,用于执行周期性计划。还有一些Builder工具,可以用来构造JobDetail和TriggerSc
2013-12-03 17:09:15
1928
转载 闲谈程序中如何打印log
转载自:http://langyu.iteye.com/blog/1147992程序中记录日志一般有两个目的:Troubleshooting和显示程序运行状态。好的日志记录方式可以提供我们足够多定位问题的依据。 这周看过很多代码,对里面的日志记录方式有些想法,今天是周末,也想总结下我对这个问题的看法。日志记录大家都会认为简单,但如何通过日志可以高效定位问题可不是简单的事情。这里
2013-11-26 17:20:56
1229
转载 MySQL数据库InnoDB数据恢复工具使用总结
本文从实际使用经验出发,介绍一款开源的MySQL数据库InnoDB数据恢复工具:innodb-tools,它通过从原始数据文件中提取表的行记录,实现从丢失的或者被毁坏的MySQL表中恢复数据。例如,当你不小心执行DROP TABLE、TRUNCATE TABLE或者DROP DATABASE之后,可以通过以下方式恢复数据。以下内容大部分参考自:Percona Data Recovery
2013-11-19 16:31:45
1695
原创 如何从ibatis中获取SQL
以下是在网上搜到的办法:运行期从ibatis配置文件中获取sql的两种方法运行期从ibatis配置文件中获取sql1.通过SqlMapClientDaoSupport,SqlMapClientImpl,MappedStatement,Sql,RequestScope等ibatis提供的类public List getUserList(UserInfo userInf
2013-10-17 21:33:09
4913
原创 MySQL启动错误一例 idata1与my.cnf innodb_data_file_path = ibdata1:XX:autoextend不一致造成的错误
一个MySQL InnoDB 共享表空间与my.cnf innodb_data_file_path = ibdata1:XX:autoextend不一致造成的错误INNOB 启动错误:错误日志:120310 22:22:18 mysqld_safe mysqld from pid file /data/db-data/localhost.localdomain.pid
2013-10-17 20:19:44
4652
转载 为什么寄存器比内存快?
计算机的存储层次(memory hierarchy)之中,寄存器(register)最快,内存其次,最慢的是硬盘。 同样都是晶体管存储设备,为什么寄存器比内存快呢? Mike Ash写了一篇很好的解释,非常通俗地回答了这个问题,有助于加深对硬件的理解。下面就是我的简单翻译。 原因一:距离不同 距离不是主要因素,但是最好懂,所以放在最前面说。内
2013-10-15 12:39:27
1041
转载 MySQL 授权用户 ; 存储过程的DEFINER; 命令分隔符DELIMITER
最近项目中遇到有人使用DEFINER这样的关键字,找了半天没有怎么理解这个意思。以为是限制谁使用这个存储过程,后来测试发现并不是这样。搜索网上发现很多说法都不正确。看到一篇博客,做了如下介绍,才有所理解。原来是这样。由于记录一下,转载过来。1. MySQL的用户名都是username@hostname的形式2. 授权用户的命令: mysql >grant all priv
2013-09-03 12:37:17
3476
原创 CentOS查看打开文件数和文件操作符
CentOS查看打开文件数和文件操作符比如查看mysql文件句柄占用情况: ps -ef|grep mysql找到pid ls /proc/3313/fd/ -l 查看某个进程的文件句柄使用 ,3313为pid ls /proc/3313/fd/ -l> /tmp/filesdesc.log 将
2013-08-26 22:01:06
6725
转载 PostgreSQL与MySQL比较
特性MySQLPostgreSQL实例通过执行 MySQL 命令(mysqld)启动实例。一个实例可以管理一个或多个数据库。一台服务器可以运行多个 mysqld 实例。一个实例管理器可以监视 mysqld 的各个实例。通过执行 Postmaster 进程(pg_ctl)启动实例。一个实例可以管理一个或多个数据库,这些数据库组成一个集群。集群是磁盘
2013-08-24 23:18:16
844
转载 MySQL Performance: Linux I/O
MySQL Performance: Linux I/OIt was a long time now that I wanted to run some benchmark tests to understand better the surprises I've met in the past with Linux I/O performance during MySQL benchmark
2013-08-24 17:51:48
1241
hibernate3.6.10-Final-api.chm
2012-08-27
Java学生信息管理系统源码包
2010-07-25
JSP程序设计从入门到精通 chm
2010-07-25
FlashMX经典 实例电子书 FlashMX经典-组件类,对象类,属性类,效果类,按钮,文字类
2008-10-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人