优化MySQL数据库性能的八大“妙手” (1)

转载 2006年06月23日 22:02:00
连接(JOIN).. 之所以更有效率一些,是因为 MySQL不需要在内存中创建临时表来完成这个逻辑上的需要两个步骤的查询工作。

  3、使用联合(UNION)来代替手动创建的临时表

  MySQL 从 4.0 的版本开始支持 UNION 查询,它可以把需要使用临时表的两条或更多的 SELECT 查询合并的一个查询中。在客户端的查询会话结束的时候,临时表会被自动删除,从而保证数据库整齐、高效。使用 UNION 来创建查询的时候,我们只需要用 UNION作为关键字把多个 SELECT 语句连接起来就可以了,要注意的是所有 SELECT 语句中的字段数目要想同。下面的例子就演示了一个使用 UNION的查询。

SELECT Name, Phone FROM client
UNION
SELECT Name, BirthDate FROM author
UNION
SELECT Name, Supplier FROM product

  4、事务

  尽管我们可以使用子查询(Sub-Queries)、连接(JOIN)和联合(UNION)来创建各种各样的查询,但不是所有的数据库操作都可以只用一条或少数几条SQL语句就可以完成的。更多的时候是需要用到一系列的语句来完成某种工作。但是在这种情况下,当这个语句块中的某一条语句运行出错的时候,整个语句块的操作就会变得不确定起来。设想一下,要把某个数据同时插入两个相关联的表中,可能会出现这样的情况:第一个表中成功更新后,数据库突然出现意外状况,造成第二个表中的操作没有完成,这样,就会造成数据的不完整,甚至会破坏数据库中的数据。要避免这种情况,就应该使用事务,它的作用是:要么语句块中每条语句都操作成功,要么都失败。换句话说,就是可以保持数据库中数据的一致性和完整性。事物以BEGIN 关键字开始,COMMIT关键字结束。在这之间的一条SQL操作失败,那么,ROLLBACK命令就可以把数据库恢复到BEGIN开始之前的状态。

BEGIN;
INSERT INTO salesinfo SET CustomerID=14;
UPDATE inventory SET Quantity=11
WHERE item='book';
COMMIT;


  事务的另一个重要作用是当多个用户同时使用相同的数据源时,它可以利用锁定数据库的方法来为用户提供一种安全的访问方式,这样可以保证用户的操作不被其它的用户所干扰。

优化MySQL数据库性能的八大“妙手” (1)

 1、选取最适用的字段属性  MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设...
  • phpme
  • phpme
  • 2006年06月23日 22:00
  • 1266

优化MySQL数据库性能的八大“妙手”

  本文探讨了提高MySQL 数据库性能的思路,并从8个方面给出了具体的解决方法。  1、选取最适用的字段属性  MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的...
  • hdy007
  • hdy007
  • 2007年01月15日 09:04
  • 505

【转】优化MySQL数据库性能的八大“妙手”

 本文转自:http://blog.csdn.net/starxu85/archive/2008/03/15/2184084.aspx本文探讨了提高MySQL 数据库性能的思路,并从8个方面给出了具体...
  • liubing_2010
  • liubing_2010
  • 2011年05月31日 21:15
  • 323

优化MySQL数据库性能的八大巧方法

本文从八个方面来讲解如何全新优化MySQL数据库性能。 1、选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在...
  • maxiaokun55
  • maxiaokun55
  • 2014年08月02日 23:56
  • 580

整理收藏一份PHP高级工程师的笔试题(附答案)

1. 基本知识点 HTTP协议中几个状态码的含义:503,500,401,200,301,302。。。(答案参考这篇文章:深入理解HTTP协议(二)——协议详解篇)include,require...
  • heartno01
  • heartno01
  • 2013年12月26日 22:08
  • 808

一些mysql数据库性能优化方法

一、MySQL 数据库性能优化之SQL优化 注:这篇文章是以 MySQL 为背景,很多内容同时适用于其他关系型数据库,需要有一些索引知识为基础 优化目标 减少 IO 次数 ...
  • benpaobagzb
  • benpaobagzb
  • 2015年08月27日 22:42
  • 1655

完全优化MySQL数据库性能的八大巧方法

本文从八个方面来讲解如何全新优化MySQL数据库性能。 1、选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在...
  • chenhuajie123
  • chenhuajie123
  • 2013年09月24日 18:28
  • 2091

转发完全优化MySQL数据库性能的八大巧方法

本文从八个方面来讲解如何全新优化MySQL数据库性能。   1、选取最适用的字段属性   MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越...
  • lizhitao
  • lizhitao
  • 2008年04月25日 23:12
  • 787

完全优化MySQL数据库性能的八大巧方法

完全优化MySQL数据库性能的八大巧方法 本文从八个方面来讲解如何全新优化MySQL数据库性能。 1、选取最适用的字段属性  MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在...
  • jiantailiang2003
  • jiantailiang2003
  • 2008年11月27日 20:48
  • 137

优化MySQL数据库性能

优化MySQL数据库性能从以下方面做起: 1、选取最适用的字段属性   MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因...
  • u011341352
  • u011341352
  • 2015年08月14日 09:11
  • 159
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:优化MySQL数据库性能的八大“妙手” (1)
举报原因:
原因补充:

(最多只允许输入30个字)