加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL的优化(五)

发布时间:2016-01-17 07:47:46 所属栏目:MySql教程 来源:网络整理
导读:二十一、MySQL表高速缓存工作原理 每个MyISAM表的打开实例(instance)使用一个索引文件和一个数据文件。如果表被两个线程使用或在 同一条查询中使用两次,MyIASM
二十一、MySQL表高速缓存工作原理

每个MyISAM表的打开实例(instance)使用一个索引文件和一个数据文件。如果表被两个线程使用或在 同一条查询中使用两次,MyIASM将共享索引文件而是打开数据文件的另一个实例。

如果所有在高速缓存中的表都在使用,缓存将临时增加到比表缓存尺寸大些。如果是这样,下一个被 释放的表将被关闭。

你可以通过检查mysqld的Opened_tables变量以检查表缓存是否太小。如果该值太高,你应该增大表高 速缓存。

二十二、MySQL扩展/优化-提供更快的速度

使用优化的表类型(HEAP、MyIASM或BDB表)。

对数据使用优化的列。

如果可能使用定长行。

使用不同的锁定类型(SELECT HIGH_PRIORITY,INSERT LOW_PRIORITY)

Auto_increment

REPLACE (REPLACE INTO table_name VALUES (...))

INSERT DELAYED

LOAD DATA INFILE / LOAD_FILE()

使用多行INSERT一次插入多行。

SELECT INTO OUTFILE

LEFT JOIN, STRAIGHT JOIN

LEFT JOIN ,结合IS NULL

ORDER BY可在某些情况下使用键码。

如果只查询在一个索引中的列,将只使用索引树解决查询。

联结一般比子查询快(对大多数SQL服务器亦如此)。

LIMIT

SELECT * from table1 WHERE a > 10 LIMIT 10,20

DELETE * from table1 WHERE a > 10 LIMIT 10

foo IN (常数列表) 高度优化。

GET_LOCK()/RELEASE_LOCK()

LOCK TABLES

INSERT和SELECT可同时运行。

UDF函数可装载进一个正在运行的服务器。

压缩只读表。

CREATE TEMPORARY TABLE

CREATE TABLE .. SELECT

带RAID选项的MyIASM表将文件分割成很多文件以突破某些文件系统的2G限制。

Delay_keys

复制功能

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读