PHP程序研究

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  Mysql

摘要:分表是个目前算是比较炒的比较流行的概念,特别是在大负载的情况下,分表是一个良好分散数据库压力的好方法。 阅读全文
posted @ 2010-06-07 23:43 Ephraim 阅读(1605) 评论(1) 推荐(2) 编辑

该文被密码保护。
posted @ 2010-05-27 03:30 Ephraim 阅读(3) 评论(0) 推荐(0) 编辑

该文被密码保护。
posted @ 2010-05-27 03:04 Ephraim 阅读(3) 评论(0) 推荐(0) 编辑

该文被密码保护。
posted @ 2010-05-27 02:43 Ephraim 阅读(2) 评论(0) 推荐(0) 编辑

该文被密码保护。
posted @ 2010-05-27 02:17 Ephraim 阅读(3) 评论(0) 推荐(0) 编辑

摘要:最近由于需要大概研究了一下MYSQL的随机抽取实现方法。举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1。但是,后来我查了一下MYSQL的官方手册,里面针对RAND()的提示大概意思就是,在ORDER BY从句里面不能使用RAND()函数,因为这样会导致数据列被多次扫描。但是在M... 阅读全文
posted @ 2010-05-26 05:45 Ephraim 阅读(7406) 评论(4) 推荐(4) 编辑

摘要:在一些情况下,MySQL可以直接使用索引来满足一个 ORDER BY 或 GROUP BY 子句而无需做额外的排序。尽管 ORDER BY 不是和索引的顺序准确匹配,索引还是可以被用到,只要不用的索引部分和所有的额外的 ORDER BY 字段在 WHERE 子句中都被包括了。使用索引的MySQL Order By下列的几个查询都会使用索引来解决 ORDER BY 或 GROUP BY 部分:SEL... 阅读全文
posted @ 2010-05-26 05:33 Ephraim 阅读(13282) 评论(1) 推荐(1) 编辑

摘要:(1)针对Innodb表,尽量不执行SELECTCOUNT(*)语句,因为Innodb表没有类似MyISAM那样的内部计数器来记录表记录总量,执行这个操作将会全表扫描,速度很慢.(2)尽量使用MyISAM表,除非必须使用其他类型,因为MyISAM类型的总体读写效率是相当高的,缺点是表级锁,而不是行/页级锁.(3)善用EXPLAIN来帮助你分析查询优化情况(4)如果需要对一个较大的且并发读写较多的数... 阅读全文
posted @ 2010-05-26 05:19 Ephraim 阅读(420) 评论(0) 推荐(0) 编辑

摘要:索引是快速搜索的关键。MySQL索引的建立对于MySQL的高效运行是很重要的。下面介绍几种常见的MySQL索引类型。在数据库表中,对字段建立索引可以大大提高查询速度。假如我们创建了一个 mytable表:我们随机向里面插入了10000条记录,其中有一条:5555, admin。在查找username="admin"的记录 SELECT * FROM mytable WHERE username='... 阅读全文
posted @ 2010-05-26 05:18 Ephraim 阅读(1141) 评论(0) 推荐(0) 编辑

摘要:恰当的索引可以加快查询速度,可以分为四种类型:主键、唯一索引、全文索引、普通索引。主键:唯一且没有null值。create table pk_test(f1 int not null,primary key(f1));alter table customer modify id int not null, add primary key(id);普通索引:允许重复的值出现。create table... 阅读全文
posted @ 2010-05-26 04:56 Ephraim 阅读(1246) 评论(0) 推荐(0) 编辑

摘要:建立如此结构的数据表,并插入110万条随机记录,进行查询性能测试。插入110万条随机记录后,数据表的大小为102MB。现在使用phpMyAdmin自带的SQL查询器进行性能分析。下面进行带索引的模式下查询测试:A.随机的字符型字段全匹配查询,用时0.0005(S)B.随机的主键查询,用时0.0005(S)C.随机的使用字符函数查询,用时0.4482(S)D.使用LIKE模式一查询,用时0.0007... 阅读全文
posted @ 2010-05-14 02:32 Ephraim 阅读(515) 评论(0) 推荐(0) 编辑

摘要:数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器第1章 引言随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用,每天几十亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。通过数据切分来提高网站性能,横向扩展数据层已经成为架构研发人员首选的方式。水平切分数据库,可以降低单台机器的负载,同时最大限度的降低... 阅读全文
posted @ 2010-05-14 02:28 Ephraim 阅读(864) 评论(1) 推荐(1) 编辑

摘要:最近得到了一个数十M的MySQL脚本文件,准备还原为数据库。以前就使用MySQL-Front短暂使用过MySQL,先用它试试,结果挂掉。这样吧,先用MySQL-Front创建了空数据库,然后使用mysql命令行导入吧。1)使用MySQL-Front创建了空数据库因为看脚本中对象都有DEFAULT CHARSET=gbk COMMENT=…指令,所以字符集选择gbk2)启动MySQL命... 阅读全文
posted @ 2010-05-14 02:24 Ephraim 阅读(465) 评论(0) 推荐(0) 编辑

摘要:<!-->query result(1 records)count(*)993098下面我们 来一步一步看看下面的这条语句:explain select sql_no_cache * from t_page_sample order by id asc limit 900001,20;<!--><!-->query result(1 records)idsele... 阅读全文
posted @ 2010-05-14 02:10 Ephraim 阅读(795) 评论(1) 推荐(0) 编辑