MySql调优

MySql调优

1:前言

MySQL的优化能够提高网站的效率,我相信谁也不想自己的网站或者系统出现CPU:100%,内存:100%这样的峰值,优化成为我们至关重要的一点,在一家小型公司的打(pian)杂(chen)时候,让我有机会了解到MySQL的调优;了解到了服务器调优前后的速度是多么不同.在此,我以的经历做下总结.

2:优化的过程:

1:使用Show Status命令来查看数据库到底是读得多还是写得多?

我一般都会使用: show status like “com_select%”等命令来查看是读得多还是写得多.

2:数据库引擎的选择:

InnoDB:事务支持 外键支持 查询效率相对较慢!(我的猜测是因为它的空间分配问题)

Myisam:查询速度那是相当快的,这是,我一般的选择.(有人说不支持外键呀,而且锁定也是表级锁呀;说白了就说没钱);

对于,读的数据库类型不考虑事务和外键,应该马上切换到Myisam.性能提高非常快.

3:慢查询日志:

慢查询日志是一个非常好用的东西,先来看下它的使用步奏.

1.查看是否开启:

 

image_thumb

 

2.开启慢查询日志:

要在my.ini(linux:my.cnf),加上 log_slow_queries = slow.log; 和 log_query_time = 10;(界定什么查询多少秒是慢查询).这样,每次查询日志就会把超过指定时间的语句写进到慢查询日志.

4:找到慢查询的语句进行分析:

我一般用desc命令来分析一条语句,如下图:(desc select语句)

image_thumb1

5:找到相应的语句来处理:

一般,情况都是加上索引处理;

6: Handler_read_key和Handler_read_rnd_next:

image_thumb3

如图分析,可以发现Handler_read_key越高越好(索引用得多).反之,Handler_read_rnd_next越低越好.

7:其他细节思维导图如下

 

MySQL_thumb1

MySQL2_thumb

 

8:结束语:

MySQL调优是很大学问,而这个很大的学问在大型网站的下面又是一个很小的学问,上面的只是我个人总结的调优基础.谢谢

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值