我刚刚把我12岁的服务器升级为一个非常快速的新服务器。它是一个专用服务器,戴尔R620 1 x Intel E5-2620 (2.0GHz,6C) CPU 32 my -4×250 my RAID 1,简而言之,在每一种方式上都比我的旧服务器快得多。然而,每当我查询MySql数据库时,响应仍然相当缓慢。
装上任何静电都是闪电般的速度。此外,当我看到我的另一个网站(这个服务器托管两个网站),利用Mongodb,它是快速照明。目前我只使用+- 2.5Gb或32 of中的ram。是否为MySql设置了一些允许它使用更多资源以加快速度的设置?或者,我还能做什么(只处理设置或MySql查询)来加速这个缓
SELECT *
FROM openorders_tracking
WHERE id NOT IN (SELECT tracking_id FROM openorders_commission)
SELECT *
FROM openorders_tracking
LEFT JOIN openorders_commission
ON openorders_tracking.id=openorders_commission.tracking_id
WHERE openorders_commission.id IS NULL
我想知道这两个查询是否有显著的区别。
我还没有任何数据,
我有两个独立的查询:
SELECT `ad_general`.`id`
FROM (`ad_general`)
WHERE `ad_general`.`city` = '708'
ORDER BY `ad_general`.`id` desc
LIMIT 15
SELECT count(`ad_general`.`id`) as count
FROM (`ad_general`)
WHERE `city` = '708'
为了避免向mysql结果发送多个请求以提高性能,我将这两个查询组合在一起。
SELECT `ad_general`.`id`,
我想知道是否必须在DB2中使用DB2语句,或者在MySQL中使用LIMIT语句,如果我使用表中的索引查询唯一id以提高性能。还是sql提供程序已经注意到,在找到行时,最大结果只有一个并停止查询?
示例查询:
DB2:SELECT * FROM myTable WHERE id = 1 FETCH FIRST 1 ROWS ONLY
MySQL:SELECT * FROM myTable WHERE id = 1 LIMIT 1
有人想过这件事吗?
在SQL中,程序员在编写MySQL时应该注意查询优化(比如选择最优的关系代数查询)吗?或者这是DBMS的责任。
来解释我的意思。在本例中:SELECT * FROM Staff s, Branch b WHERE s.branchNo = b.branchNo AND (s.position = 'Manager' AND b.city = 'London')
MySQL的查询优化器是否有效地决定了如何分配谓词( WHERE子句)的括号?(例如,取决于每个表的大小或系统统计数据中的任何信息)