4. 表内update,insert,delete查询的锁定时间。
5. select for update如果条件字段无索引的话,会引起的是锁全表而不是行锁,请关注。
6. 如果查询包括GROUP BY但你想要避免排序结果的消耗,你可以指定ORDER BY NULL禁止排序。
3.3.2定期分析表
ANALYZE TABLE
语法:
ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] …
本语句用于分析和存储表的关键字分布。在分析期间,使用一个读取锁定对表进行锁定。这对于MyISAM, BDB和InnoDB表有作用。对于MyISAM表,本语句与使用myisamchk -a相当。
CHECK TABLE
语法:
CHECK TABLE tbl_name [, tbl_name] … [option] …
option = {QUICK | FAST | MEDIUM | EXTENDED | CHANGED}
检查一个或多个表是否有错误。CHECK TABLE对MyISAM和InnoDB表有作用。对于MyISAM表,关键字统计数据被更新。
CHECK TABLE也可以检查视图是否有错误,比如在视图定义中被引用的表已不存在。
CHECKSUM TABLE
语法:
CHECKSUM TABLE tbl_name [, tbl_name] … [ QUICK | EXTENDED ]
报告一个表校验和。
3.3.3使用optimize table
OPTIMIZE TABLE
语法:
OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] …
如果已经删除了表的一大部分,或者如果您已经对含有可变长度行的表(含有VARCHAR, BLOB或TEXT列的表)进行了很多更改,则应使用OPTIMIZE TABLE。被删除的记录被保持在链接清单中,后续的INSERT操作会重新使用旧的记录位置。您可以使用OPTIMIZE TABLE来重新利用未使用的空间,并整理数据文件的碎片。
OPTIMIZE TABLE只对MyISAM, BDB和InnoDB表起作用。
附录: 一.Sar命令获得
安装sysstat 系统状态包
[root@mysql1 ~]# yum info sysstat
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Installed Packages
Name : sysstat
Arch : i386
Version : 7.0.2
Release : 3.el5
Size : 383 k
Repo : installed
Summary : sar 和 iostat 系统监视命令。
URL : http://perso.orange.fr/sebastien.godard/
License : GPL
Description: 该软件包为 Linux 提供了 sar 和 iostat 工具。sar 和 iostat
: 使系统能够监视磁盘、网络、以及其它 IO 活动。
:
[root@mysql1 ~]# yum install sysstat
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
–> Running transaction check
—> Package sysstat.i386 0:7.0.2-3.el5 set to be updated
–> Finished Dependency Resolution
Dependencies Resolved
Package Arch Version Repository Size
============================================================================================
Installing:
sysstat i386 7.0.2-3.el5 CentOS 169 k
Transaction Summary
============================================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 169 k
Is this ok [y/N]: y
Downloading Packages:
sysstat-7.0.2-3.el5.i386.rpm | 169 kB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : sysstat 1/1
Installed:
sysstat.i386 0:7.0.2-3.el5
Complete!
sar 命令行的常用格式:
在linux中使用sar调优系统性能
关键字: sar
sar默认在linux下没有安装,需要我们手工安装,一般建议源码方式安装,下载类似sysstat-6.1.3.tar.gz
然后configure make make install即可使用.
sar 命令行的常用格式:
sar [options] [-A] [-o file] t [n]
在命令行中,n 和t 两个参数组合起来定义采样间隔和次数,t为采样间隔,是必须有
的参数,n为采样次数,是可选的,默认值是1,-o file表示将命令结果以二进制格式
存放在文件中,file 在此处不是关键字,是文件名。options 为命令行选项,sar命令
的选项很多,下面只列出常用选项:
-A:所有报告的总和。
-u:CPU利用率
-v:进程、I节点、文件和锁表状态。
-d:硬盘使用报告。
-r:没有使用的内存页面和硬盘块。
-g:串口I/O的情况。
-b:缓冲区使用情况。
-a:文件读写情况。
-c:系统调用情况。
-R:进程的活动情况。
-y:终端设备活动情况。
-w:系统交换活动。
下面将举例说明。
例一:使用命令行 sar -u t n
例如,每60秒采样一次,连续采样5次,观察CPU 的使用情况,并将采样结果以二进制