MySql优化之慢查询日志
慢查询日志慢查询日志是MySql提供的一种日志记录,它用来记录在MySql中响应时间超过阈值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为10,意思是运行10秒以上的语句。根据日志来查看哪些SQL超出了我们的最大忍耐时间...
慢查询日志慢查询日志是MySql提供的一种日志记录,它用来记录在MySql中响应时间超过阈值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为10,意思是运行10秒以上的语句。根据日志来查看哪些SQL超出了我们的最大忍耐时间...
小表驱动大表 优化原则:小表驱动大表,即小的数据集驱动大的数据集。SELECT * FROM A WHERE id IN (SELECT id FROM B) 等价于: for SELECT id FROM B for SELECT * FROM A WHERE A.id = B.id 当数据表B的数据集小于A表时,用I...
索引失效 在SQL优化中我们会为表添加索引,但是有时候索引并没有按照我们的预想进行使用,这种现象我们称为"索引失效",这是需要避免的。准备CREATE TABLE `staffs`( `id` INT PRIMARY KEY AUTO_INCREMENT, `NAME` VARCHAR(24) NOT NU...
准备//还有两个表的数据请看【双表优化】文章 CREATE TABLE IF NOT EXISTS `phone`( `phoneid` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `card` INT(10) UNSIGNED NOT NULL, PRIMARY KEY (`phoneid`) ); INSERT INTO...
准备CREATE TABLE IF NOT EXISTS `class`( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `card` INT(10) UNSIGNED NOT NULL, PRIMARY KEY (`id`) ); CREATE TABLE IF NOT EXISTS `book`( `boo...