gpt4 book ai didi

MYSQL 优化一个有 137000 行的表

转载 作者:行者123 更新时间:2023-11-29 01:48:11 25 4
gpt4 key购买 nike

我正在尝试优化 redmine数据库在它变得太痛苦之前;更改(基本上是所有 SVN 更改的日志)位于 137000 行(ish)并且该表设置为基本默认设置。无 key 封装等

表格如下

ID int[11] Auto Inc (PK)
changeset_id int[11]
action varchar[1]
path varchar[255]
from_path varchar[255]
from_revision varchar[255]
revision varchar[255]
branch varchar[255]

索引:主要(ID),
changeset_id 设置为 INDEX BTREE

所有基于来自 http://forge.mysql.com/wiki/Top10SQLPerformanceTips 的一些信息的 latin1 字符集

表引擎是InnoDBPack Keys 设置为 Default(仅打包 char varchar)

所有其他选项均已关闭。

优化它的最佳方法是什么? (截断栏 ;o) )

最佳答案

有一些针对 mysql 的通用优化技术:首先是确保您的数据类型符合 ABC(参见 here)。然后从上往下看,ID 和 changeset_id 看起来不错,action 应该是一个 char 1而不是 varchar(如果您可以将其留空,则可以为空(通常,请确保在其他字段上正确设置了您的可为空))。至于其他 5 个字段(根据大小可能会控制表),字符串是正确的数据类型吗? (我猜 path、from_path、branch 是的,但也许 revision 应该是一个数字(我猜它不是,所以它支持 git 或其他东西))

此外,它们看起来像规范化目标,尤其是因为“路径”和“修订”表会规范化其中的四个(here's a basic tutorial,如果需要的话)

关于MYSQL 优化一个有 137000 行的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/955394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com