我刚刚把我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 BusinessID as ID,
111151.29341326*SQRT(pow(-6.186751-X(LatLong),2)+pow(106.772835-Y(LatLong),2)*0.98838574205337) AS Distance from
(
SELECT *
FROM
tableauxiliary
WHERE
MBRContains(
GeomFromText (
'MULTIPOINT(-6.1934985598076 106.7660479115
我在我的web服务器上运行下面的MySQL查询,数据库位于一个单独的服务器上:
$sql="select * from call_history where extension_number = '0536*500' and flow = 'in' and DATE(initiated) = '".date("Y-m-d")."' ";
$rs=mysql_query($sql,$pbx01_conn);
echo mysql_num_rows($rs).' Calls IN';
c
我在mysql数据库中有一张表。我的查询看上去像是
SELECT device_id,date,timestamp,power,floor
from tableData
where date=%s
and floor=%s
order by timestamp desc
limit 1
为了更快的结果,我在我的表上创建了索引。我的索引:
+------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+-----
我们的MySQL(Percona Server)数据库有一个包含1000万行的大表,有很多比40秒更长的慢查询:
SELECT col1, Seller, col3, col4, Id, col5
FROM table1
WHERE Seller = 346761
AND col1 IN (2, 3, 4)
AND col3 = 1
AND col4 NOT IN (5,6,7)
ORDER BY Id DESC
LIMIT 0, 20;
我在Seller、col1、col3、col4上创建了索引。这些索引是单独的,而不
我正在尝试使用Laravel的数据库查询生成器编写一个MySQL选择查询
我有一个mysql查询:
SELECT * FROM `tweets` WHERE `user_id` = 1 OR `user_id` in (SELECT `follows_id` from `follows` where `user_id` = 1)
我正试着为Laravel写这封信
$users = DB::table('tweets')
->where('user_id', '=', 1)
这是如何做到的呢?
我们希望将LAMP服务器从MySQL 5.7迁移到MariaDB 10.6。我们克隆了服务器,安装了MariaDB并迁移了数据库。我原以为SQL查询会有一些速度上的改进,但令我惊讶的是,我们的应用程序在使用MariaDB时速度更慢。我试图分析一些查询,我向您展示了一个特定的案例。
我们有这样一个查询:(a) SELECT .. FROM .. WHERE EXISTS (SELECT .. FROM .. WHERE outer_col=inner_col AND inner_where)
用MySQL 5.7: 0.1s。与MariaDB 10.6: 10
我试图按照建议的:(b) .. W
我的查询正在产生一个非常缓慢的结果。这显然是不能接受的,我在这里肯定做错了什么。
我在查询中有4个表。tr_id指的是单个事务,它可能包含来自多个想要去几个不同国家的人的应用程序。我想将每个人和每个国家的信息分别显示在一个单独的行中,例如:
1298 2011-08-04 2011-09-01 Joe Bloggs Platinum_Level China
1298 2011-08-04 2011-09-01 Jane Bloggs Platinum_Level China
1298 2011-08-04 2011-09-14 Joe Bloggs Platinum_Level Japan
我有两张桌子如下所示
我在两个表上都有如下所示的综合索引:
users表有一个复合索引:(login_type_id,language_id,enabled,level) 地址表有一个复合索引:(user_id,city_id,enabled)
我想执行以下查询
select * from users u
left join address adr
on u.id = adr.user_id
where u.login_type_id = 1
and u.langauge_id = 1
and u.enabled = true
and adr.city_id in (1,2,3,4,
我必须获取数据库中publish_date在两个日期之间的所有条目。所有日期都存储为整数,因为日期采用UNIX时间戳格式...下面的查询效果很好,但它需要“太长时间”。它返回10到20个dazs之前所做的所有条目。
SELECT * FROM tbl_post WHERE published < (UNIX_TIMESTAMP(NOW())-864000)
AND published> (UNIX_TIMESTAMP(NOW())-1728000)
有什么方法可以优化这个查询吗?如果我没记错的话,它是在每个条目上调用NOW()和UNIX_TIMESTAMP。我认为将这两个重复函
假设我有一个包含两个条件的MySQL查询:
SELECT * FROM `table` WHERE `field_1` = 1 AND `field_2` LIKE '%term%';
第一个条件显然要比第二个条件便宜得多,所以我想确保它首先运行,从而限制将与like子句进行比较的行池。MySQL查询条件是否按列出的顺序运行,如果不是,是否有指定顺序的方法?