自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

I'm lovin' it

thinking&doing

  • 博客(24)
  • 资源 (3)
  • 收藏
  • 关注

原创 Linux的man那点事

用过linux的朋友估计没有谁不熟悉man命令,大家都知道利用它可以查看到linux绝大部分命令的使用方法(但不是全部),除了这个你还了解它什么呢?其实了解man可以查看其它命令的使用方法就掌握了它的核心,但是最近看书的时候又找到了它的一点其他信息。哈哈,你就将这篇文章当做扯谈吧!~1. man其实是manual的缩写(不会很多人认为它是"男人"吧),表示手册、指南的意思。2. 其

2012-04-27 20:13:31 1038

原创 Linux系统控制文件 /etc/sysctl.conf

/etc/sysctl.conf这个目录主要是配置一些系统信息,而且它的内容全部是对应于/proc/sys/这个目录的子目录及文件。这样或许你不理解,先看看我的系统/etc/sysctl.conf这个文件里面有什么内容:cat /etc/sysctl.conffs.file-max = 3145728fs.suid_dumpable = 1kernel.core_uses_pid

2012-04-18 17:05:14 9306

原创 why?

一篇扯谈的博客被自动删了3次,难道这篇还要被删么?

2012-04-17 19:21:56 624

原创 Linux下防止进程使用swap及防止OOM机制导致进程被kill掉

首先解释两个概念:swap:在linux里面,当物理内存不够用了,而又有新的程序请求分配内存,那么linux就会选择将其他程序暂时不用的数据交换到物理磁盘上(swap out),等程序要用的时候再读进来(swap in)。这样做的坏处显而易见,swap in/swap out这里的代价比较大,相比数据一直放在内存里面,多了读磁盘的操作,而磁盘IO代价。。大家都懂的。OOM:out of m

2012-04-17 19:19:06 6807

原创 Linux资源使用配置文件 /etc/security/limits.conf

这个文件主要是用来限制用户对系统资源的使用,具体的使用方法 man 5 limits.conf,里面便给出了详细的用法user@db-2:~$ cat /etc/security/limits.conf # /etc/security/limits.conf##Each line describes a limit for a user in the form:##

2012-04-17 12:07:16 3048

原创 [网络相关]/etc/host.conf & /etc/hosts/ & /etc/resolv.conf等等

买了本自己一直期望的书《Linux系统架构与目录解析》,其实想要这样一本书很久了。虽然不是一个sa,但是也想对linux做到应用方面的熟练,而对linux整体把握,甚至细到有哪些目录,哪些文件,这些文件是做什么用的,我想做到这些应该能水平提升不少。初步浏览了这本书,正如作者所说这本书书更像是工具书,适合查阅,而不是通篇读。又正如有人评论这本书,感觉正入境了,作者却停止了他的思绪---讲

2012-04-16 23:49:34 4944

原创 浅析multi range read(MRR) & batch key access(BKA) & block nested loop(BNL)

另一篇文章介绍了index condition pushdown(ICP) 这篇讲叙的是MRR和与之相关的BKA什么是MRR?MRR:multi range read。不好解释,先来看个例子: select * from tb where key_column = x 在没有MRR的情况下,它是这样得到结果的:1.  select key_column, pk_column

2012-04-15 18:55:39 9556 5

原创 浅析index condition pushdown

另一篇文章讲叙了 MRR和BKA 什么是indexcondition pushdown(ICP)?在数据库中pushdown表示某些操作“下推”,也就是某些操作提前执行,在生成执行计划时某些操作下推可以大大提升效率(为什么叫下推,因为优化器在生成的计划叫做执行计划树,操作从叶子节点开始往根上执行,下推就意味着提前执行)。举个最简单的例子,某些投影操作下推可以大大减小在执行过程中的数据量,而

2012-04-15 18:46:48 6818 2

原创 mysql中操作系统级别错误代码与其含义

经常见到网友在发一些关于mysql操作出错的解决方法,现在整理一下。mysqlperformanceblog上明确说了,mysql里面出现的errno(操作系统级别的错误)没有经过任何改变,仅仅是封了一个错误代码,然后呈现给用户。下面是手册上对这些操作系统级别错误和其对应错误代码解释:Linux平台:NumberMacroDescript

2012-04-10 12:24:17 2811

原创 insert into...select需要注意的问题

平常习惯生产数据的时候,直接用insert into ...select这种语法,结果今天需要的数据量稍微一大就出错了,错误信息如下:mysql> insert into t1 select null, b, c from t1;ERROR 126 (HY000): Incorrect key file for table '/tmp/#sql_689f_0.MYI'; try to re

2012-04-09 17:44:20 11482 1

原创 浅析 innodb next-key lock

record lock:记录锁,也就是仅仅锁着单独的一行gap lock:区间锁,仅仅锁住一个区间(注意这里的区间都是开区间,也就是不包括边界值,至于为什么这么定义?innodb官方定义的)next-key lock:record lock+gap lock,所以next-key lock也就半开半闭区间,且是下界开,上界闭。(为什么这么定义?innodb官方定义的)下面来举个手册上的

2012-04-07 10:53:56 5744 8

原创 浅析ext3删除文件慢的原因

做运维的估计都知道使用ext3文件系统时删除大文件很慢,那么大家有没有想过为什么呢?我也有过同样的疑问,于是查了相关资料并找到了一些理由。在ext系列的文件系统中有一个很重要的概念inode(它与文件独立存在),它维护了文件的相关属性信息。struct ext3_inode { __u16 i_mode; /* File mode */ __u16 i_uid;

2012-04-07 10:39:55 2618

转载 SAS & SATA

经常听到硬盘有SAS/SATA/SCSI...之分(当然还没包括SSD/FUSION IO)那么他们到底有什么关系和区别呢?从网上找了一篇文章,记录一下:一、SAS和SATA本质区别   1、SAS SATA发展由来    SATA是SerialATA,串行ATA由并行ATA(PATA)发展而来    SAS 是 SerialAttached SCSI ,是新一代的SCSI技术

2012-04-07 00:07:46 1477

原创 对innodb MVCC实现的一点点思考

不得不说MVCC思想对关系数据库的影响很大,读不阻塞写,写也不会阻塞读,大大提高了并发性。当前主流的数据库基本上都实现了MVCC,比如Oracle、MySQL、PostgreSQL等等。现在来谈谈MySQL(innodb)是怎么实现MVCC的,它的优缺点是什么。innodb对MVCC的实现是通过在每个事物开启时创建一个当前系统活跃事务的副本(read_view),然后每次读取行的时候,通过这个行上

2012-04-06 23:59:38 1896

原创 sed在指定行插入新行

前些天备份使用mysqldump备份出的数据文件(insert形式),里面的内容没有use db_name这个语句,所以如果在脚本中执行,那么会提示no database selected,所以就想在里面添加一个use db_name的语句。但是因为数据文件太大,如果直接vim打开恐怕不行。所以想到sed,然后上网找了一下sed在指定行插入的命令,然而需要注意的是,这些命令虽然可以直接定位到行,但

2012-04-06 23:51:12 92938 2

原创 mysql 5.1中DDL语句对Transaction的影响

这个问题是从mysqlperformance上发现的,挺有意思,分享一下。DDL语句对transaction的影响。下面贴出自己的实验过程:mysql-5.5session1:mysql> start transaction;Query OK, 0 rows affected (0.00 sec)mysql> select * from test;+----+-----

2012-04-06 23:45:44 2571

原创 flush tables with read lock的一个潜在问题

看了mysqlperformance的一篇关于flush tables with read lock的文章,里面提到了它可能引发一些问题。好了,现学现卖,分享给大家。现在很多的mysql备份工具在实现原理上都利用到了flush tables with read lock。这是为备份myisam表而设计的。像xtrabackup备份innodb表时并不会锁表,因为它也会备份在备份过程中新

2012-04-06 23:41:09 6562

原创 shell命令 2>&1

在unix高级环境编程第三章的习题有一个问题:./a.out > outfile 2>&1  # 1./a.out 2&1 > outfile  # 2问这两者有什么区别。这个首先的说明几点:1.在unix和类unix(linux之类)中以文件描述符的形式打开一个文件,这个文件描述符是一个非负数。2.0代表标准输入,1代表标准输出,2代表标准错误输出3.默认的情

2012-04-06 23:37:13 1723 1

原创 mysql空用户(user列为空)带来的影响

今天搭建一个测试环境时,遇到了一个很隐蔽的问题。有必要分享一下| user | password                                  | host               |+------+-------------------------------------------+--------------------+| root | *81F5E

2012-04-06 23:34:05 5893 3

转载 How Logs Work On MySQL With InnoDB Tables

这篇帖子个人感觉写得非常棒,不转不行In this article I will describe how logs work with MySQL and InnoDB. Very little of this material is in the manual. I gleaned it from the source code while researching for our la

2012-04-06 23:26:37 1083

转载 运维必须要知道的几个Linux服务器监控命令

有些 Linux 发行版会提供 GUI 程序来进行系统的监控,例如 SUSE Linux 就有一个非常棒而且专业的工具 YaST,KDE 的 KDE System Guard 同样很出色。当然,要使用这些工具,你必须在服务器跟前进行操作,而且这些 GUI 的程序占用了很多系统资源,所以说,尽管 GUI 用来做基本的服务器健康状态监测挺好,但如果你想知道真正发生什么,请关掉 GUI 开始命令行之旅吧

2012-04-06 23:22:34 1763

原创 mysql报错:two many connections/two many open files的解决方法

最近在论坛里面看到有几个朋友都发帖求助,原因是mysql报错:[ERROR] Error in accept: Two many open files。而且这位朋友还说他并没有同时打开这么多文件,那么这是什么原因呢?首先,我们需要了解的是,在linux里面打开文件是以文件描述符(FD,file descripter)的形式打开的,每打开一次文件,那么os就分配给你一个文件描述符,对于同一个

2012-04-06 23:17:24 2308

原创 innodb_fast_shutdown的内幕

参数innodb_fast_shutdown提醒了我一直没研究过的innodb特性之一——insert buffer。首先简述这个参数,然后谈谈insert buffer的实现。Innodb_fast_shutdown告诉innodb在它关闭的时候该做什么工作。有三个值可以选择:1.  0表示在innodb关闭的时候,需要purge all, merge insert buffer

2012-04-06 23:11:51 6404

原创 Linux I/O调度策略

I/O scheduler的作用就是为上层应用发过来的IO请求做一个优化,它主要完成两件事:merge and sort。以此达到提高系统吞吐量、缩短响应时间的目的。为什么要merge and sort,因为在机械磁盘时代寻道时间的代价很大,如果能对相邻物理地址的请求顺序做优化那么可以大大的提高读写性能。更改I/O scheduler有两种方式:1./sys/block/device_na

2012-04-06 23:02:06 2528

acm常用模板(ACM程序设计专用)

搞ACM程序设计的,相信有了这个模板之后会更自信的,祝你们成功 这个是吉林大学内部资料 很全面

2010-05-01

VC课程设计的几个实例

VC课程设计的资料,每年学vc的估计都要进行课程设计吧,那么这就是很考的参考资料

2009-12-10

空空如也

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

TA关注的人

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