优化 SQL 的一般步骤

1,通过show status 命令了解各种SQL的执行频率 比如Com_select 记录执行select查询的操作次数,一次查询只累加1 2,定位执行效率较低的SQL语句 1通过慢查询日志定位,2慢查询在查询结束后才记录,使用show processlist查看 3,通过EXPLAIN分析低效SQL的执行计划 4,通过show profile 分析SQL(>mysql5.0.37) mysql&g...

[阅读更多 →]

MySQL 性能测试&压力测试-mysqlslap

MySQL 性能测试&压力测试-mysqlslap MySQLSlap是从MySQL的5.1.4版开始就开始官方提供的压力测试工具。MySQLSlap通过模拟多个并发客户端并发访问MySQL来执行压力测试,同时提供了较详细的SQL执行数据性能报告,并且能很好的对比多个存储引擎(MyISAM,InnoDB等)在相同环境下的相同并发压力下的性能差别。 MySQLSlap特点是语法简洁,使用方便,可对mysql进行...

[阅读更多 →]

MySQL 的奇技淫巧 - 避免重复插入数据

Mysql的奇技淫巧 - 避免重复插入数据 MySql 避免重复插入数据 通常那我们插入一条带有唯一性字段数据的时候,我们先去查一下数据库有没有相同数据,需要操作2次数据库,总感觉这样做特别的low,那么咱们来看下怎么操作一次数据库实现来这样的需求,当然这个唯一性数据要给他设置上主键索引或者唯一索引 1、初始演示表: (1) 测试表结构 字段 类型 是否null 默认 说明 id int no 主键...

[阅读更多 →]

MySQL 的奇技淫巧 - SQL 技巧

一、一些常见的SQL实践 (1)负向条件查询不能使用索引 select * from order where status !=0 and stauts !=1 not in/not exists都不是好习惯 可以优化为in查询: select * from order where status in(2,3) (2)前导 模糊查询不能使用索引 select * from order where desc like...

[阅读更多 →]

MySQL 锁及其机制的探究和详解

MySQL锁及其机制的探究和详解 MySQL 锁 1、screen 在介绍MySQL锁之前啊,先给大家介绍一个工具的使用screen,便于大家实践检验真理: Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。 我们这次用它的一...

[阅读更多 →]