mysql数据库有100万+数据,查询起来很慢了,如何优化
展开全部
你好,你可以根据条件去添加索引,例如:
一、
所有mysql索引列类型都可以被索引,对来相关类使用索引可以提高select查询性能,根据mysql索引数,可以是最大索引与最小索引,每种存储引擎对每个表的至少支持16的索引。总索引长度为256字节。
mysim和innodb存储引擎的表默认创建索引都是btree索引,目前mysql还不支持函数索引,但支持前缘索引,对字段前N个字符创建索引
二、mysql创建索引语法
Create [unioun|fulltext|spatial] index indexname[using indextype] on tablename( tablenamecol)
index_col_name:
col_name[ (length)][asc |desc]
如果你创建索引时搞错了,需要修改mysql索引我们可以用alert来修改索引,语法与create index创建索引差不多,我们就不说了,可以查看相关手册。
下面我们来看一个关于mysql创建索引实例教程。
mysql>create index cityname on city(city(2));
Query Ok,600 rows affected (0.26 sec)
Records :600 Duplicates:0 Warings 0:
我们现在来以city为条件进行查询,如下面。
->explain select * from city where city ='www.111cn.net' G
id:1
......
possible_keys:cityname
key:cityname
好了,现在我们来看看mysql删除索引等实例
Drop indexname on tablename
实例,我现在要删除刚才创建city索引
>drop index cityname on city;
Query ok, .....
不过通常对百万级数据的查询或者其他操作,都改换其他的大型的数据库了,希望能帮到你,望采纳。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询