MayMatrix 的博客

MayMatrix , May Sunshine

MySQL索引背后的数据结构及算法原理

摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常...

2015-08-28 18:17:59

阅读数:425

评论数:0

mysql 索引类型以及创建

MYSQL的乱码问题 MySQL 的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)。对于字符集的支持细化到四个层次: 服务器(server),数据库(database),数据表(table)和连接(conn...

2015-08-28 14:31:00

阅读数:293

评论数:0

由浅入深探究mysql索引结构原理、性能分析与优化

分类: Mysql/postgreSQL 第一部分:基础知识 第二部分:MYISAM和INNODB索引结构 1、简单介绍B-tree B+ tree树 2、MyisAM索引结构 3、Annode索引结构 4、MyisAM索引与InnoDB索引相比较 第三部分:MYS...

2015-08-28 14:19:46

阅读数:239

评论数:0

Mysql在大型网站的应用架构演变

Scale Out(也就是Scale horizontally)横向扩展,向外扩展 Scale Up(也就是Scale vertically)纵向扩展,向上扩展 无论是Scale Out,Scale Up,Scale In,实际上就是一种架构的概念,这些概念用在存储上可以,用在数据库上,网络上一样...

2015-08-27 18:58:24

阅读数:229

评论数:0

聚集索引和非聚集索引(整理)

聚集索引和非聚集索引(整理) 官方说法:   聚集索引   一种索引,该索引中键值的逻辑顺序决定了表中相应行的物理顺序。   聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,后者按姓氏排列数据。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该...

2015-08-27 16:28:31

阅读数:244

评论数:0

给程序员推荐一些提高工作效率的工具

一些高效的软件可以给我带来高效的工作效率。下面一些工具推荐给大家。 在日常的电脑操作中,我们常常花很多时间重复做着一件事情:退回桌面/开始菜单->寻找软件图标->点击启动。但如果你喜欢高效的键盘操作,那么你需要一款好用的快速启动器软件。 我们曾介绍过 Launchy...

2015-08-27 13:56:37

阅读数:1020

评论数:0

[MySQL] 主流存储引擎介绍

看你的mysql现在已提供什么存储引擎: mysql> show engines; 看你的mysql当前默认的存储引擎: mysql> show variables like '%storage_engine%'; 你要看某个表用了什么引擎(在显示结果里参数engine...

2015-08-26 17:19:47

阅读数:997

评论数:0

MySQL索引背后的数据结构及BTree B+Tree算法原理

摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用My...

2015-08-26 16:43:54

阅读数:12269

评论数:2

mysql中的coalesce用法

在mysql中,其实有不少方法和函数是很有用的,这次介绍一个叫coalesce的,拼写十分麻烦,但其实作用是将返回传入的参数中第一个非null的值,比如     SELECT COALESCE(NULL, NULL, 1);  -- Return 1  SELECT COALESCE...

2015-08-26 16:21:51

阅读数:296

评论数:0

在MySQL中如何为连接添加索引

http://hackmysql.com/case4 译文: 我先通过一个简单的例子说明在MySQL中如何为连接添加索引,然后再看一个有挑战性的例子。 简单的3个表的连接 表结构很简单,3个表tblA, tblB, tblC,每个表有3个字段:col1, col2, col3。在没有索...

2015-08-26 11:47:23

阅读数:160

评论数:0

MySQL性能优化的最佳20+条经验

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过 多的SQ...

2015-08-26 11:30:17

阅读数:224

评论数:0

EXPLAIN sql优化方法1 添加索引

先limit再join SELECT a.prj_id,a.pre_doc_id,a.out_time, a.inactive_user, a.inactive_time,  u.use_nm, GROUP_CONCAT(Distinct d.job_no) jb_nos,ifnull(s...

2015-08-26 10:41:55

阅读数:311

评论数:0

EXPLAIN sql优化方法3 DERIVED 派生表

派生表和视图的性能 从MySQL 4.1开始,它已经支持派生表、联机视图或者基本的FROM从句的子查询。 这些特性之间彼此相关,但是它们之间的性能比较如何呢? MySQL 5.0 中的派生表似乎和视图实现的方式不同,尽管我从合并的代码基数来看觉得在查询优化上应该是一样的。 ...

2015-08-26 10:40:38

阅读数:4323

评论数:0

EXPLAIN sql优化方法2 Using temporary ; Using filesort

优化GROUP BY语句    默认情况下,MySQL对所有GROUP BY col1,col2...的字段进行排序。这与在查询中指定ORDER BY col1,col2...类似。因此,如果显式包括一个包含相同的列的ORDER BY子句,则对MySQL的实际执行性能没有什么影响。 如果查询包...

2015-08-26 10:36:05

阅读数:376

评论数:0

mysql索引操作(增删查)

查看索引 mysql> show index from tblname; mysql> show keys from tblname; · Table 表的名称。 · Non_unique 如果索引不能包括重复词,则为0。如果可以,则为1。 · Key_name 索引的...

2015-08-25 11:58:25

阅读数:246

评论数:0

mysql 数据库性能优化方案

网上有不少mysql 性能优化方案,不过,mysql的优化同sql server相比,更为麻烦与复杂,同样的设置,在不同的环境下 ,由于内存,访问量,读写频率,数据差异等等情况,可能会出现不同的结果,因此简单地根据某个给出方案来配置mysql是行不通的,最好能使用 status信息对mysql进行...

2015-08-25 10:49:35

阅读数:209

评论数:0

Mysql主从服务器原理及配置

一 主从配置的原理      mysql的Replication是一个异步的复制过程,从一个mysql instance(Master)复制到另一个mysql instance(Slave), 在master与slave之间的整个复制过程主要由三个线程完成,分别为Master端得IO线程和Slav...

2015-08-25 10:39:26

阅读数:992

评论数:0

数据库 三范式的解释

关系数据库的几种设计范式介绍 1、第一范式(1NF) 在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实...

2015-08-25 10:23:22

阅读数:405

评论数:0

MySQL数据库事务隔离级别(Transaction Isolation Level)

数据库隔离级别有四种,应用《高性能mysql》一书中的说明:   然后说说修改事务隔离级别的方法: 1.全局修改,修改mysql.ini配置文件,在最后加上 1 #可选参数有:READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ...

2015-08-24 10:03:44

阅读数:220

评论数:0

MySQL SELECT FOR UPDATE语句使用示例

以MySQL 的InnoDB 为例,预设的Tansaction isolation level 为REPEATABLE READ,在SELECT 的读取锁定主要分为两种方式: SELECT ... LOCK IN SHARE MODE SELECT ... FOR UPDATE 这两种方式在事...

2015-08-24 10:02:29

阅读数:687

评论数:0

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