摘要:
第一方面:30种mysql优化sql语句查询的方法 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 3.应尽量避免在 where 子句中对字 阅读全文
摘要:
1.查询主流程: a.客户端发送一条查询给服务器 b.服务器先检查查询缓存,如果命中了缓存,则立刻返回存储在缓存中的结果,否则进入下一阶段。 c.服务器进行SQL解析,预处理,再由优化器生成对应的执行计划, d.mysql根据优化器生成的执行计划,调用存储引擎的API来执行查询。 e.将结果返回给客 阅读全文
摘要:
一、MySql服务器逻辑架构图 每个虚线框都是一层: 第一层:最上层的服务器不是MySql所独有的,大多数基于网络的客户端/服务器工具或者服务都有类似的系统。比如链接处理,授权认证,安全等等。 每个虚线框都是一层: 第一层:最上层的服务器不是MySql所独有的,大多数基于网络的客户端/服务器工具或者 阅读全文
摘要:
存储过程说白了就是把经常使用的SQL语句或业务逻辑封装起来,预编译保存在数据库中,当需要的时候从数据库中直接调用,省去了编译的过程.提高了运行速度;同时降低网络数据传输量 1、返回值上的不同存储函数将向调用者返回一个且仅返回一个结果值。存储过程将返回一个或多个结果集(函数做不到这一点),或者只是来实 阅读全文
摘要:
0.三大范式及反范式 ◆ 第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列。 ◆ 第二范式(2NF):首先是 1NF,另外包含两部分内容,一是表必须有一个主键;二是没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分。 ◆ 第三范式(3NF):首先是 2NF,另外非主键 阅读全文
摘要:
1.事务的ACID属性 事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠 阅读全文
摘要:
转载自 http://www.cnblogs.com/CareySon/archive/2012/04/25/2470063.html 简介 内存是计算机中最重要的资源之一,通常情况下,物理内存无法容纳下所有的进程。虽然物理内存的增长现在达到了N个GB,但比物理内存增长还快的是程序,所以无论物理内存 阅读全文
摘要:
0.索引的概念 索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。好比是一本书前面的目录,能加快数据库的查询速度。 无论是Myisam和Innodb引擎,如果在建表的时候没有显示的定义一行主键列的话,他内部都会自动创建一个隐藏的主键索引 阅读全文
摘要:
如何选择存储引擎: 如果不在乎可扩展能力和并发能力,也不在乎崩溃后数据的所示问题,却对innoDB的空间占用过多比较敏感,这种场合应该使用MyISAM。否则应该使用InnoDB。如果需要使用在线热备份,需要使用事务的订单类业务,最好使用InnoDB。 1.构成 MyISAM:每个MyISAM在磁盘上 阅读全文