前言
对于一个以数据为中心的应用,数据库的好坏直接影响到程序的性能,因此数据库性能至关重要。所以mysql数据库的优化操作大家都要有所了解,本文就主要总结了mysql数据库中常见的优化操作,下面话不多说了,来看看详细的介绍吧。
一、Index索引
将Index放第一位,不用说,这种优化方式我们一直都在悄悄使用,那便是主键索引。有时候我们可能并不在意,如果定义适合的索引,数据库查询性能(速度)将提高几倍甚至几十倍。
普通索引
作用是提高查询速度。
建表,创建索引
CREATE TABLE tbl_name(字段名称 字段类型 [完整性约束条件],~index [索引名] (column_name)); |
创建索引
CREATE INDEX index_name ON tab_name (column_name) |
删除索引
DROP INDEX index_name FROM tab_name |
查看索引
SHOW index FROM tab_name |
主键索引
作用是加速查询和唯一约束
建表,创建索引
CREATE TABLE tbl_name(字段名称 字段类型 [完整性约束条件],~PRIMARY KEY(column_name)); |
创建索引
ALTER TABLE tab_name ADD PRIMARY KEY(column_name) |
删除索引
ALTER TABLE tab_name DROP PRIMAY KEY(column_name) |
唯一索引
作用是加速查询和唯一约束
建表,创建索引
CREATE TABLE tbl_name(字段名称 字段类型 [完整性约束条件],~unique [索引名] (column_name)); |
创建索引
CREATE UNIQUE INDEX index_name ON tab_name (column_name) |
删除索引
DROP UNIQUE INDEX index_name FROM tab_name |
二、少用SELECT*
可能有的人查询数据库时,遇到要查询的都会select,这是不恰当的行为。我们应该取我们要用的数据,而不是全取,因为当我们select时,会增加web服务器的负担,增加网络传输的负载,查询速度自然就下降 。
三、EXPLAIN SELECT
对于这个功能估计很多人都没见过,但是这里强烈推荐使用。explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。主要用发就是在select前加上explain即可。
EXPLAIN SELECT [查找字段名] FROM tab_name ... |
四、开启查询缓存
大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了。
新闻热点
疑难解答