1.建立索引,尽可能把索引建立到你你经常比较的字段上,如select
成都创新互联公司专注于丰都企业网站建设,响应式网站,电子商务商城网站建设。丰都网站建设公司,为丰都等地区提供建站服务。全流程按需定制制作,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
a,b,c,d
from
a
where
索引字段=值,这个索引字段最好是数值型数据
2.慢有更多情况,
情况1:远程查询,其实可能查询不慢,由于数据量大,传输过程慢
情况2:WHERE
后面的比较数据太多,比如
like
类的语句
情况3:需要哪个字段只取那个字段就行了,比如select
*
from
a与select
b,c,d
from
a速度是有差距的
3.数据库定期维护,压缩,把不常用的数据备份后放入备份库里,查询时查备份库等
问题补充:
.第一条:建立索引,怎么建立,我也听说过,但不知道怎么使用
答:每种数据建立索引的方法有差异,比如SQL
SERVER
2000中可对多个字段进行索引,比如SQL
SERVER2000中有命令
CREATE
INDEX
为给定表或视图创建索引。
只有表或视图的所有者才能为表创建索引。表或视图的所有者可以随时创建索引,无论表中是否有数据。可以通过指定限定的数据库名称,为另一个数据库中的表或视图创建索引。
语法
CREATE
[
UNIQUE
]
[
CLUSTERED
|
NONCLUSTERED
]
INDEX
index_name
ON
{
table
|
view
}
(
column
[
ASC
|
DESC
]
[
,...n
]
)
[
WITH
index_option
[
,...n]
]
[
ON
filegroup
]
index_option
::=
{
PAD_INDEX
|
FILLFACTOR
=
fillfactor
|
IGNORE_DUP_KEY
|
DROP_EXISTING
|
STATISTICS_NORECOMPUTE
|
SORT_IN_TEMPDB
}
第三条:数据库定期维护,压缩:怎么个压缩法?及时备份数据到备份库查询备份库,那查询时不是还慢吗?
答:这个有压缩工具,基本上每种数据库都有自己的压缩数据库的工具
初步判断是因为你sql执行次数过多。
你的每条记录都进行了一次校验sql,通过的还要导入,所以说至少有100万条sql吧,一起执行多条sql,是要快于逐条执行每个sql 。
建议你在php中处理好全部的sql,用BEGIN END链接起来一起执行,试试看,格式如下
BEGIN
sql1;
sql2;
sql3
...
sql100w;
END;
数据库的读取能一次查询完成的尽量不要分成多次查询
不知道你用的是什么框架,如果有where_in方法的话可以用它来解决,先要构造出order_sn值的数组
没有的话就自己构造'or'条件字符串,然后用where一次查询完成
连接语句怎么写的,是不是用的域名,建议用IP,例如:
mysql_connect('127.0.0.1', 'root', '123456');