- 浏览: 146049 次
- 性别:
- 来自: 杭州
最新评论
-
cha_bill:
new Long 空间换时间Long.valueOf 时间换空 ...
请慎用new Integer()、new Long()…… -
何飞同学要加油:
文件系统不一样好像是说 windows和Linux的文件默认为 ...
请慎用java的File#renameTo(File)方法 -
lvxiaoxi:
还有一种情况,看我的博文:http://lvxiaoxi.it ...
请慎用java的File#renameTo(File)方法 -
kililanxilu:
weiqingfei 写道1、慎用 Integer Long ...
请慎用new Integer()、new Long()…… -
di1984HIT:
人家Integer源代码里面小的数字都缓存了。
请慎用new Integer()、new Long()……
文章列表
备份pw库 mysqldump -u root -p -h 127.0.0.1 --database pw>pw.sql
还原pw库 mysql -u root -p -h 127.0.0.1 pw<pw.sql
查看表的引擎类型等状态信息 SHOW TABLE STATUS [FROM db_name] [LIKE 'pattern']
今天同学们在群里讨论oracle的count(*)与count(1)的问题,正好提到mysql的情况。我突然想到自己遇到的问题:在myisam引擎执行count(*)速度非常快,而且执行速度与记录条数无关,而innodb却不是这样,记录越多,速度越慢。
于是做了一个实验,在一个有8000W条记录的innodb表执行了一下 select count(*) from table 。 果然一直等待,大概8分多后出来结果。马上再次执行相同的语句,用时大约22秒。马上执行第三次,还是约22秒。
于是我猜想innodb没有把记录数保存起来,而是做了实时统计,所以导致速度比较慢。第 ...
RPM 大全
RPM 有五种基本的操作方式(不包括创建软件包): 安装, 卸载, 升级, 查询,和验证。 下面我们就来逐一的讲解吧。
一、 安装RPM包
RPM 软件包通常具有类似foo-1.0-1.i386.rpm 的文件名。其中包括 软件包的名称(foo),版本号(1.0) ...
- 2008-05-26 17:56
- 浏览 1918
- 评论(0)
1、取得用户自己的表
引用select * from tab
2、查看表信息
引用select * from user_tab_cols where TABLE_NAME='VC_DEF'
- 2008-04-14 14:21
- 浏览 1549
- 评论(0)
load事件可以安全的执行JS,因为该事件是在页面完全加载完后才开始执行(包括页面内的图片、flash等所有元素),不会因为JS需要对某个DOM操作,而页面还没有加载该节点而引起错误。但是这种安全是需要付出代价的:如果某些图片(或者一些别的东西)加载特别慢,那么load事件会等到很久之后才会触发。
针对这个问题,一些JS框架提供了一些补充方法。如:jquery的$(document).ready()、mootools的domready事件。都是在页面的DOM加载完毕后立即执行,而不需要等待漫长的图片下载过程。
如果不使用这些框架,怎样实现自己的 document re ...
要执行的文件在那里,用which命令
[root@test /root]# which vi
alias vi='vim'
/usr/bin/vim
[root@test /root]#
即可看到vi命令在/usr/bin/vim路径
使用ldd命令确认这个程序执行需要哪些动态链接库
[root@test /root]# ldd /usr/bin/vim
libncurses.so.5 => /usr/lib/libncurses.so.5 (0x40017000)
libacl.so.1 => /lib/libacl.so.1 (0x40058000)
libgpm.so.1 = ...
- 2008-03-28 12:48
- 浏览 1809
- 评论(0)
大批量数据的删除操作
- 博客分类:
- TimesTen
考虑使用 “DELETE FIRST NumRows”
当必须删除大量的行而TRUNCATE 语句又不适用时,考虑使用 “FIRST NumRows” 子句从一个表中批量删除行。“FIRST NumRows”句法使你能够将“DELETE FROM TableName WHERE ...” 语句变成一系列“DELETE FIRST 10000 FROM TableName WHERE ...”操作。
通过将大量删除操作分割成一批小型操作,行删除速度会快得多,系统的整体并发性和复制性能也不会受影响。
- 2007-12-27 13:25
- 浏览 1546
- 评论(0)
由于项目需要大量并发insert/select/update,所以考虑采用内存数据库或者内存表解决这个问题。
首先考虑到的是mysql的内存表。查阅了大量资料,未发现内存表有什么不满足我们需求的情况。于是进行压力测试。模拟量大量的并发请求,在压力上升到一定程度的时候,发现了锁等待。这个情况连续出现了两次。
于是询问DBA,他们的意见是mysql的内存表(memory engine)因为和mysiam engine一样使用的表锁定,所以在大量并发更新的时候性能会比较低。
这样需要考虑使用timesten内存数据库....
- 2007-12-27 12:34
- 浏览 6827
- 评论(1)
今天做压力测试的时候发现的问题。
tomcat打开了1024个最大连接,但是还没有到1024个并发请求的时候tomcat挂掉了。看错误日志,发现了大量的异常:Too many open files
原来是linux下面的描述符开的不够,一查只开了1024个,增加到6W多个就解决问题咯。
- 2007-12-27 11:40
- 浏览 2247
- 评论(0)
以前我一直以为File#renameTo(File)方法与OS下面的 move/mv 命令是相同的,可以达到改名、移动文件的目的。不过后来经常发现问题:File#renameTo(File)方法会返回失败(false),文件没有移动,又查不出原因,再后来干脆弃用该方法,自己实现一个copy方法,问题倒是再也没有出现过。
昨天老板同学又遇到这个问题,File#renameTo(File)方法在windows下面工作的好好的,在linux下偶尔又失灵了。回到家我扫了一遍JDK中File#renameTo(File)方法的源代码,发现它调用的是一个本地的方法(native method),无法再跟踪 ...
mysql 的存储过程出来时间还不久,如果俺没有记错的话,应该是从5.0开始支持存储过程。跟oracle相比,mysql的存储过程功能还不够前者强大,使用也相对麻烦,另外,资料也是相当的少啊。
我使用的是5.0版本,在这个版本下面,mysql的存储过程不能设置字符集。这样就会出现一个问题:假如mysql数据库指定的默认编码是latin1,而这个字段的编码是gbk(假如字段没有指定编码,那么它的编码就是它所属表的编码),那么就会出现乱码。
解决的办法是:将mysql的默认编码改为同这个字段的编码一致。将my.ini或my.cnf中的
default-character-set=latin1
...
- 2007-12-16 18:47
- 浏览 6159
- 评论(0)
算来我也是mysql的忠实用户了,从mysql 3 的时候就开始用mysql,直到现在开始使用5.1版本,看到mysql一点一点的变化,感觉mysql功能越来越强大,真是是我们这种用不起oracle用户的福音啊!
如果没有记错的话,mysql4.0升级到4.1以后 ...
- 2007-12-16 18:37
- 浏览 5450
- 评论(0)
java 5 引入了自动装箱和自动拆箱的概念。使得开发者不需要注意基本类型如:int long等基本类型和对应的对象类型:Integer Long等之间的转换问题。但是也稍微带来了一点点需要注意的东西。
在java 5 中,要特别注意这些对象之间使用==的问题。
int value = 100;
Integer a = value;
Integer b = value;
System.out.println(a + "==" + b + " ? " + (a == b));
输出:100==100 ? true
int v ...
- 2007-12-10 15:27
- 浏览 12404
- 评论(7)
版本: tomcat5.5 ,别的版本是不是这样我没有验证。
因为我想修改tomcat的默认目录,所以做了如下修改:
<Host name="localhost" appBase="webapps">
<context path="" docBase="D:\xx" />
</Host>
结果发现没有达到预期目的。tomcat是成功启动了,但是应用没有起来。
检查了半天,最后修改成如下这样就OK了:
<Host name="localhost&quo ...
- 2007-12-07 17:55
- 浏览 1512
- 评论(0)