大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
分页本来就是数据越多越慢,正常情况下,绝对有条件限制,例如时间
创新互联公司从2013年开始,先为土默特右旗等服务建站,土默特右旗等地企业,进行企业商务咨询服务。为土默特右旗企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
还可以不用limit,用id段查询,弊端是不能断
你的查询需求中,最常用的where字段是什么,然后在数据表中给这个字段建立索引。多表查询、嵌套查询的话,就得优化sql了,这个得具体情况具体分析了。
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
}
第三条:数据库定期维护,压缩:怎么个压缩法?及时备份数据到备份库查询备份库,那查询时不是还慢吗?
答:这个有压缩工具,基本上每种数据库都有自己的压缩数据库的工具
如果数据库数据很大,最好给相应字段建立索引,这样会快很多!还有就是查询语句尽量不要写 in()之类的,这比较耗时!
表结构可能有问题,你用来查询的字段是键么?不是的话在百万数据量时时间长是必然的,还有你的SQL语句,如果有联表查之类的,而表之间的关联和条件有非键项,那慢也是正常的
1. 找到你mysql的安装目录,打开my.ini,如果是Linux服务器,那就是my.conf;
2.然后在[mysqld]选项下面添加:
skip-name-resolve
这个选项的意思是:禁用DNS解析,连接速度会快很多。
然后保存,重启mysql服务器,希望能帮你解决问题!