如何进行mysql的优化

 更新时间:2016年4月21日 09:00  点击:1367

1,这个比较简单:在phpmyadmin中有提供

2.先设计表的时候考虑选择什么样的存储引擎,myisam不支持事务,但查询速度快,不过现在一般采用的都是InnoDB,能符合95%的项目需求。具体的你可以看看两者的区别。
3.要避免全表查询的操作,这个网上有资料。
4.在where和order by的字段上面建索引,当然索引不是多就好,会使insert和update速度变慢
5,尽量不要采用null值,因为这样搜索引擎会花费大量的时间在这里,而且存储上也有区别,建议采用not null。
6.varchar 和char的选择。可以节省不少空间。
7.字段尽可能短,起的有意义的名字,符合命名规范。
8.避免在where 条件中来使用 <> 或 !=,因为这样会造成全表扫描的。
9,进行分区分表
10.建视图来代替程序中的复杂查询。
11.设置缓存
12.like效率较低,尽量采用不同的sql查询
13. 在where后面的字段中尽量不要采用运算和使用mysql中的函数,例如LOWER()等。
14.between 和in,前者更好
15,写sql语句的时候,思考是否要返回那么多的数据,limit可以进行限制
16,删除表使用truncate不要用delete,因为delete会一行一行的删除。
17.如果一些sql语句都是相同的只是变量不相同,可以进行sql语句合并,采用预处理,可以节省编译的时间。
18.数据库连接池的使用
19,采用集群
20,不用的资源马上释放
21.拆分大的 DELETE 或INSERT 语句,批量提交SQL语句
22.usleep避免服务器宕机
23,select在从服务器上面进行,修改数据的操作在主服务器上
如果还有其他的,后面待补充。

[!--infotagslink--]

相关文章

  • MySQL手册版本 5.0.20-MySQL优化(四) (1)

    7.2.9 MySQL 如何优化 ORDER BY 在一些情况下,MySQL可以直接使用索引来满足一个 ORDER BY 或 GROUP BY 子句而无需做额外的排序。 尽管 ORDER BY 不是...2016-11-25
  • MySQL手册版本 5.0.20-MySQL优化(四) (1)(2)

    想要提高 ORDER BY 的速度,首先要看MySQL能否使用索引而非额外的排序过程。如果不能使用索引,可以试着遵循以下策略: 增加 sort_buffer_size 的值。...2016-11-25
  • MySQL优化GROUP BY(松散索引扫描与紧凑索引扫描)

    这篇文章主要介绍了MySQL优化GROUP BY(松散索引扫描与紧凑索引扫描),需要的朋友可以参考下...2016-06-12
  • MySQL手册版本 5.0.20-MySQL优化(四) (1)(4)

    可以在锁表后,一起执行几个语句来加速 INSERT 操作: LOCK TABLES a WRITE; INSERT INTO a VALUES (1,23),(2,34),(4,33); INSERT INTO a VALUES (8,26...2016-11-25
  • mysql优化的重要参数 key_buffer_size table_cache

    MySQL服务器端的参数有很多,但是对于大多数初学者来说,众多的参数往往使得我们不知所措,但是哪些参数是需要我们调整的,哪些对服务器的性能影响最大呢...2016-06-12
  • MySQL优化之如何了解SQL的执行频率

    show [session|global] status 可以根据需要加上参数“ session ”或者“ global ”来显示 session 级(当前连接)的统计结果和 global 级(自数据库上次启动至今)的统计结果。如果不写,默认使用参数是“ session ”。...2014-05-31
  • MySQL手册版本 5.0.20-MySQL优化(四) (1)(5)

    通常地,应该保存所有的冗余数据(在数据库原理中叫做"第三范式")。然而,为了能取得更高的效率复制一些信息或者创建摘要表也是划算的。 存储过程或者 UDFs...2016-11-25
  • MySQL手册版本 5.0.20-MySQL优化(二) (1)

    7.2.1 EXPLAIN 语法(得到SELECT 的相关信息) EXPLAIN tbl_name 或者: EXPLAIN SELECT select_options EXPLAIN 语句可以被当作 DESCRIBE 的同义词来用,...2016-11-25
  • MySQL手册版本 5.0.20-MySQL优化(二) (1)(2)

    表中最多只有一行匹配的记录,它在查询一开始的时候就会被读取出来。由于只有一行记录,在余下的优化程序里该行记录的字段值可以被当作是一个恒定值。con...2016-11-25
  • MySQL优化全攻略-服务器参数调整

    正确的编译方法固然重要,但它只是提高MySQL服务器性能工作的一部分。MySQL服务器的许多参数会影响服务器的性能表现,而且我们可以把这些参数保存到配置文件,使得每次MySQ...2016-11-25
  • MySQL优化之如何查找SQL效率低的原因

    查询到效率低的 SQL 语句 后,可以通过 EXPLAIN 或者 DESC 命令获取 MySQL 如何执行 SELECT 语句的信息,包括在 SELECT 语句执行过程中表如何连接和连接的顺序,比如我们想计算 2006 年所有公司的销售额,需要关联 sales 表...2014-05-31
  • MySQL手册版本 5.0.20-MySQL优化(四) (1)(3)

    7.2.12 加速 INSERT 插入一条记录花费的时间由以下几个因素决定,后面的数字大致表示影响的比例: 连接:(3) 发送查询给服务器:(2) 解析查询:(2) 插入记录:(1 x...2016-11-25
  • MySQL手册版本 5.0.20-MySQL优化(二) (1)(3)

    连接类型跟 ALL 一样,不同的是它只扫描索引树。它通常会比 ALL 快点,因为索引文件通常比数据文件小。MySQL在查询的字段知识单独的索引的一部分的情况...2016-11-25
  • MySQL手册版本 5.0.20-MySQL优化(二) (1)(4)

    下面的例子展示了如何通过 EXPLAIN 提供的信息来较大程度地优化多表联合查询的性能。 假设有下面的 SELECT 语句,正打算用 EXPLAIN 来检测: EXPLAIN...2016-11-25
  • 如何进行mysql的优化

    这篇文章主要介绍了如何进行mysql的优化,其实脚本之家之前就分享了很多的相关资料,需要的朋友可以参考下...2016-04-21