gpt4 book ai didi

mysql - 将 id 从 varchar UTF8 更改为 ascii char 是否有意义 - 是否建议 - 过度工作我的整个 mysql 模型?

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

我正在 RAILS 中进行开发,并且在开始时使用 SQLITE(不是 sqlite 问题)。

几个月后,在我的 MySQL 数据库中遇到 COLLATE 问题后,我摘掉了设计师的帽子,戴上了数据库管理员的帽子......

我意识到 - 由于某种原因我不确定,我不记得 - 所有表都是 charset 'utf8' collat​​e 'utf8_unicode_ci',原则上是可以的,因为更多矿石更少的所有表格都有“多语言文本”

但我也从 Rails 默认自动增量整数 ID 迁移到 UUID 作为主键。这在某种程度上感谢 RAILS - varchar(36)

(在 UUID 的 BIN 格式首次成功后,由于工具问题,我决定退回到文字 UUID)

但是这个 ID(PK、FK)也是 UTF8 并整理“utf8_unicode_ci”和 - 如前所述 varchar(36)

所以现在我考虑将整个数据库架构重新设计为所有 id (PF anf FK) 到 char(36) charset 'ascii' collat​​e 'ascii'

但我担心 Rails 对此做了什么以及它对进一步迁移意味着什么。

所以 - 再说一遍 - 我是否应该改变“我的获胜团队”(效果很好)以获得更好的表现,为了美观?

关键是,我没有数百万条记录,我不确定 MySql 使用 varchar(36) utf8 而不是 ascii char(36 ) - 当然稍后会更快并且占用更少的空间,但是值得吗?

最佳答案

我确信使用 UUID 与整数是有充分理由的,但如果您不恢复到整数,则不必担心,不值得,您的应用程序仍然可以在处理数百万条记录时正常运行。

“过早的优化是万恶之源”

关于mysql - 将 id 从 varchar UTF8 更改为 ascii char 是否有意义 - 是否建议 - 过度工作我的整个 mysql 模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48602096/

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