Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL问题越大=越慢?_Mysql - Fatal编程技术网

MySQL问题越大=越慢?

MySQL问题越大=越慢?,mysql,Mysql,请容忍我,我对MySQL编码没有太多信心。 我正在运行一个类似于twitter的网站。然而,用户获得的追随者越多,站点在特定用户配置文件上运行的速度就越慢。 拥有少数追随者的用户具有相当快的页面加载速度 下面是MySQL的“关注者”部分,你们中的任何人都能看到代码中的问题,或者解释为什么会发生这种情况吗 提前谢谢 代码: 首先,为什么要对一个不断更新的表使用MyISAM引擎,这会减慢应用程序的速度,因为MyISAM使用表级锁,这意味着选择必须等待插入操作完成后才能运行,始终对此类表使用InnoD

请容忍我,我对MySQL编码没有太多信心。 我正在运行一个类似于twitter的网站。然而,用户获得的追随者越多,站点在特定用户配置文件上运行的速度就越慢。 拥有少数追随者的用户具有相当快的页面加载速度

下面是MySQL的“关注者”部分,你们中的任何人都能看到代码中的问题,或者解释为什么会发生这种情况吗

提前谢谢

代码:


首先,为什么要对一个不断更新的表使用MyISAM引擎,这会减慢应用程序的速度,因为MyISAM使用表级锁,这意味着选择必须等待插入操作完成后才能运行,始终对此类表使用InnoDB

第二件事我认为最好为
follower
follower
中的每一个使用一个键,因为现在任何类似
的查询,其中follower=X
都不会使用索引
follower


如果您可以显示您的
选择的示例
,也许您会得到更多的建议。

任何问题都可能是由于您的查询而不是您的表结构造成的。因此,请发布查询以检索数据,以及输出。冒着听起来愚蠢的风险,我在哪里能看到这些查询?@AndyH:你是为这个网站写代码还是只是在做数据库维护?嗨,不,这是一个买来的脚本的一部分。我想弄明白,当一个用户有很多“追随者”时,它为什么会变慢。谢谢你的回复。我曾考虑过使用InnoDB,但MySQL是一个购买的脚本的一部分(所以你会认为它是正确的!)我确实将它改为InnoDB,但没有什么不同?我对这类事情一无所知,所以我现在所做的一切都是反复尝试。脚本提供的完整MySQL会有帮助吗?@AndyH不,只需向我们展示一些您的
选择。然后,根据这一点,人们会建议他们是否想看完整的脚本。至于innoDB,即使您没有直接看到任何差异,我可以告诉您,对于这样的表,它比innoDB好1000%。CodeBird,我知道这听起来很可笑,但是选择什么呢?我对这类事情真的很陌生。CodeBird-你想要HTML的片段吗*对不起,听起来很愚蠢,我同意。我真的需要了解和理解SQL。对不起,浪费了大家的时间。我去了解一下。谢谢
CREATE TABLE IF NOT EXISTS `followers` (
    `id`        int(10)       unsigned            NOT NULL  AUTO_INCREMENT,
    `follower`  int(11)       unsigned            NOT NULL,
    `following` int(10)       unsigned            NOT NULL,
    `status`    enum('0','1') CHARACTER SET utf8  NOT NULL  DEFAULT '1' COMMENT '0 Trash, 1 Active',
    `date`      timestamp                         NOT NULL  DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (`id`),
    KEY `follower` (`follower`,`following`,`status`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;