DBA eyes_百度空间
 
文章列表
 
2012年01月29日 星期日 11:21

 
2011年09月25日 星期日 02:05

mark it

在根据主键查询或者唯一性索引查询是出现:Extra: Impossible WHERE noticed after reading const tables

explain走到这个方式,会很慢,一个空表也是如此,在并发量高的情况下存在相互的等待,因为他要判断之。

如果直接走索引的方式,那么效率就非常高。

 

奇怪mysql要整这么个东西干啥

 

http://wangyuanzju.blog.163.com/blog/stat

 
2011年08月23日 星期二 04:09

参考文档: http://dev.mysql.com/doc/refman/5.1/en/lock-tables.html

文档很详细,一些需要注意的地方:

lock table有两种模式  

lock tables table_name  read  [or write];

test1:

s

 
2011年08月21日 星期日 00:35

./mk-query-digest slow.log

--如此简单就可以分析mysql的慢日志,当然如果slow log很大时,这么做会消耗很大的性能。

主要参数:

--limit: default: 95%:20  Limit output to the given percentage or count.

--select: Compute aggregate statistics for these attributes.  (Query_time,Lock_time,Rows_sent,Rows_examin

 
2011年06月22日 星期三 22:47

2011-8-1

今天陪小隽睡觉的时候,小家伙做了个超级可爱的动作。 小手指向我的腋窝,做挠痒痒状,然后把小手拿回去用嘴巴吹吹,还发出‘hoho’的声音,感觉是想给我挠

 
2011年06月17日 星期五 12:09
一个innod的表,如果根据没有索引的列去更新,那么很悲剧,会lock整个表。

update tmp_xf set c 
 
2011年06月16日 星期四 22:27

Mark it!!!

cost =
    blevel +
    ceiling(leaf_blocks * effective index selectivity) +
    ceili

 
2011年06月14日 星期二 11:05
一些说明
堆表 没主键和索引
IOT表有主键
数据行长度22个字节
导入的数据主键ID随机性比较大,没有排序的
@@导入2000w
 
2011年06月13日 星期一 21:55

当导入索引组织表的数据不能排序时,那么效率是很差的。如果用一个大事务来做,很可能失败,并且导致服务器压力很大。

在oracle中还是推荐使用根据extent分块来实现大数据量的移动 http://hi.baidu.com/dbaeyes/blog/item/dcf741ada8edac004b36d674.html

 测试:

 
2011年06月12日 星期日 22:08

   索引组织表其实就是存储在一个索引结构中的表

一般我们在oracle数据库中,用到的都是堆组织表,而在mysql常用引擎innodb中的表就是索引组织表,今天因为业务需要,测试了下oracle的索引组织表

  需求是这样的,将有几十亿数据的A表的新字段cc更新为一个新值(蛋疼的需求),这个值来自数据仓库统计得到的一个B表,A.ID与B.ID关联,需要将B表拉到A表所在的库。如果使用常规的方法,将B表拉过来,然后还需要创建 id,cc两个字段的联合索引,这样将消耗大量的空间,并且索引大小会比表还大。所以直接

 
2011年06月09日 星期四 20:26

推荐一个软件和一个格式化工具

evernote 方便的记录,支持各种平台 android、iphone、ipad、mac、windows、blackberry、web,并且可以相互共享,也算是一朵小云 

 

使用http://quickhighlighter.com/ 可以把代码漂亮的色彩格式,真的很好用。

比如

 
2011年05月30日 星期一 21:57
 
2011年05月29日 星期日 22:08

mysql备库处理binlog日志是单线程的,无论主库有多少个database或者主库的tps有多高,备库当前的恢复模式都是单进程恢复。这样解决了并发的问题,但是也是备库很容易在主库高tsp的情况下,造成延迟。

一些情况下,备库的延迟可以通过预热来加快sql的执行速度。预热就是将需要更新的数据提取进行select,将数据缓存到内存,减少恢复进程执行时的IO消耗。 但当更新的数据很随机,数据量远远大于buffer pool大小时就不适用了。

数据库的tps上不去,负载过高,同时备库延迟,很多情况下是由于磁盘IO的压力导致的,如果重

 
2011年05月29日 星期日 20:18

 

之前写过关于mysql取随机数的记录,当时没有去分析表里数据量的分布情况,所以当执行计划不同时,实际的效果有非常大的差别。

dbaeyes 06:47:52>select count(

 
2011年05月29日 星期日 19:24

在取mysql主键最大最小值时,mysql会使用最优方式 SELECT tables optimized away

官方解释
 SELECT tables optimized away:当我们使用某些聚合函数来访问存在索引的某个字段时,MySQL Query Optimizer 会通过索引直接一次定位到所需的数据行完成整个查询。当然,前提是在 Query 中不能有 GROUP BY 操作。如使用MIN()或MAX()的时候

root@wap 06:57:32>explain select max(id) from tmp_xf;

+----+-------------+-------+------+---------------+------+---------+---

 
     
 
 
个人档案
 
dbaeyes
男, 
浙江 杭州 
 
   
 
日历
 
     
 
文章分类
 
 
 
 
Os Net(28)
 
 
网摘(70)
 
娱乐(22)
 
 
摄影(13)
 
感悟(15)
 
 
 
 
 
 
 
 
 
汽车(14)
 
Mysql(30)
 
     
 
最近访客
 
 

hualiansheng

mbc363

liufeng086

p376710214

arwqzq

wcj0217

qq1049535006

爱曾今
     
 
好友最新文章
 
     
 
最新评论
 
     
 
背景音乐
 
     
 
订阅我的空间
 
已有人次访问本空间
 
订阅RSS  什么是RSS?

您也想拥有这样的空间?请点此申请。
     

帮助中心  |  空间客服  |  投诉中心  |  空间协议
©2012 Baidu