草庐IT

Indexing

全部标签

phpbb3 对新消息的缓慢索引

我尝试找到改进phpbb3新消息索引的解决方案。我的论坛上有大约10000条消息,每条新消息都会增加很长时间(20-30秒)。我检查了mysql_slow.log并发现其中的长查询实际上是将消息添加到phpbb3的索引中。有人有或找到任何现成的解决方案吗? 最佳答案 让MySQL运行72+小时(不重启),然后下载并运行MySQLTuner:(作为根)cd~/wgethttp://www.mysqltuner.pl/-O./mysqltuner.plchmod+x./mysqltuner.pl./mysqltuner.pl这会让您很好

MySQL 按优化排序

下面是一个表的结构:-文章:ID、标题、描述、PublishedDateTime、ViewsCount、Published主键:ID使用的查询:SelectTitleFROMArticleORDERByViewsCountDESC,PublishedDateTimeASC如您所见,我混合了ASC和DESC并且根据MySQLOrderBy优化,不会使用索引。我考虑过使用ViewsCount和PublishedDateTime的复合索引。您是否建议使用2个不同的键而不是使用复合索引。但后来我读到复合索引比使用2个不同的键更好(如果两个字段都将被使用)。分享更多信息:该表包含超过550K+条

mysql - SQL 索引性能 - ASC 与 DESC

我有一个用户表,它键入一个自动递增的int列,看起来像这样:CREATETABLE`user_def`(`user_id`int(11)NOTNULLAUTO_INCREMENT,`user_name`varchar(20)NOTNULL,`date_created`datetimeNOTNULL,PRIMARYKEY(`user_id`),UNIQUEKEY`user_name_UNIQUE`(`user_name`),)ENGINE=MyISAM使用DESC索引(主键)而不是默认的ASC是否有任何实际的性能优势?我的怀疑/推理如下:我假设最近的用户会更活跃(即更频繁地访问表),因此

php - Magento 部分索引过程的可见性

MagentoEnterprise1.13+使用“部分索引”进程,该进程作为Magentocron作业的一部分在后台运行。我目前正在努力了解这个过程正在做什么。我了解部分索引器的工作原理是跟踪实体以通过数据库中的“变更日志”表(catalog_category_flat_cl、catalog_category_product_cat_cl等)重新编制索引,然后在cron运行时重新索引这些特定项目。Magentocron当前正在我的服务器上运行(同一个cron进程已经运行了大约3个小时)。cron_schedule表表明enterprise_refresh_index正在进行中,并与上述

MySQL Order By 非常慢

我知道有很多带有各种解决方案的OrderByQuestions,但我要求的是特定于我在下面设置的数据结构。我有以下2个表设置:表格设置CREATETABLE`record`(`id`INT(11)NOTNULLAUTO_INCREMENT,`file_group_id`INT(11)NOTNULL,`status_id`INT(11)NOTNULL,`title`VARCHAR(3000)NOTNULL,`date_created`DATETIMENOTNULL,`user_created`INT(11)NOTNULL,`publish_date`DATETIMENOTNULL,PRI

mysql - 大表复合索引,优化聚合查询

我们在MySql5.5中有一个大表(有大约1.6亿条记录)。我们安装mysql的机器有4GBRAM表架构+---------------+---------------+------+-----+---------+-------+|Field|Type|Null|Key|Default|Extra|+---------------+---------------+------+-----+---------+-------+|domain|varchar(50)|YES|MUL|NULL|||uid|varchar(100)|YES||NULL|||sid|varchar(100)|

在 Magento 中编辑产品时出现 MySQL 错误

这是从v1.3.2.4升级而来的v1.4.1.1Magento当我尝试编辑产品时出现错误消息:exception'Zend_Db_Statement_Exception'withmessage'SQLSTATE[23000]:Integrityconstraintviolation:1062Duplicateentry'6028-0-2'forkey'PRIMARY''如果我尝试重新索引价格,我会在exception.log中看到相同的消息我认为问题出在catalog_product_website表中,因为如果删除该行,我可以运行价格索引,但是当我尝试编辑产品以为其分配网站时,我得到

mysql - MySQL 是否在 Having 上使用索引?

我的部分查询如下所示:HAVINGdate>'2011-04-1304:28:03'date变量被索引了,对查询有影响吗?EXPLAINEXTENDED似乎没有使用索引,但我不知道这是否只是因为我正在测试的数据库中有4行。我的查询:SELECTAVG(slen)FROM(SELECTdate,COUNT(id)asslenFROMtableWHEREproduct_id=2830GROUPBYidHAVINGdate>'2011-04-1304:28:02')asT有几行具有不同的日期值。我想选择日期>'2011-04-1304:28:02'的ID组。然后我想要属于一个组的平均行数,没

MySQL 选择索引列

我是MySQL的新手,有几个问题我找不到任何相关信息。这是我正在尝试做的事情:我有一个包含5列的数据库:id、c1、c2、c3、c4id是PRIMARYKEY每一行在c1、c2、c3、c4中都是唯一的(如果有你们为此使用的术语,也请告诉我:))我需要能够在表中搜索现有行,所以我想在c1上放置一个INDEX,这会将行数从10,000(最多100,000)减少到几行。我的问题是:在索引的性能优势变得“值得”之前,您估计有多少行?大概/轶事答案很好。我需要任何特殊的语法来告诉MySQL使用索引吗?现在我正在做一个“SELECTidFROMtableWHEREc1='blah'ANDc2='b

mysql - 使用全文索引和其他 where 条件进行高效查询

我的问题如下:我有一个包含2300万行(1年数据)的邮件消息表。下面是这张表的重要字段id(bigint)msgtimeutc(bigint)主题(小文本)正文(正文)一些其他需要展示的数据我有这张表的全文索引:CREATEFULLTEXTINDEXmailmessage_fulltextONmailmessage(body,subject)我需要像这样在msgtimeutc上搜索正文和主题中的文本并按日期时间缩小请求:SELECTM.some_dataFROMmailmessageMWHEREM.MSGTIMEUTC>=1343651965ANDM.MSGTIMEUTCMySQL不能