前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于MySQL schema调优/优化的 23个建议

关于MySQL schema调优/优化的 23个建议

作者头像
lyb-geek
发布2020-07-06 10:18:52
5250
发布2020-07-06 10:18:52
举报
文章被收录于专栏:Linyb极客之路

mysql schema优化建议

1、保证你的数据库的整洁性。

2、归档老数据

删除查询中检索或返回的多余的行。

3、在数据上加上索引

加完索引一定要看下执行计划

4、不要过度使用索引,评估你的查询

因为增删改每次都需要维护索引。

5、压缩 text 和 blob 数据类型

主要是为了节省空间,减少从磁盘读数据

6、UTF 8 和 UTF16 比 latin1 慢

7、有节制的使用触发器

尽可能放在业务层面实现。

8、保持数据最小量的冗余 — 不要复制没必要的数据

9、使用链接表,而不是扩展行

10、注意你的数据类型,尽可能的使用最小的

主要是为了节省空间,前面应该是有介绍了根据生产环境的数据去评估数据类型长度。

11、如果其他数据需要经常需要查询,而 blob/text 不需要,则将 blob/text 数据域其他数据分离

12、经常检查和优化表

命令是:optimize table XXX;

13、经常做重写 InnoDB 表的优化

实际上就是alter table xx engine=innodb;

13、有时,增加列时,先删除索引,之后在加上索引会更快

建议DDL操作用PT工具去做。

15、为不同的需求选择不同的存储引擎

比较推荐用innodb引擎

16、日志表或审计表使用ARCHIVE存储引擎 — 写的效率更高

建议单独规划一个库来做。

17、将 session 数据存储在 memcache 中,而不是 MySQL 中

memcache 可以设置自动过期,防止MySQL对临时数据高成本的读写操作

18、如果字符串的长度是可变的,则使用VARCHAR代替CHAR

主要是节约空间,因为CHAR是固定长度,而VARCHAR不是(utf8 不受这个影响)

19、逐步对 schema 做修改

永远保持对数据库的敬畏,因为你不知道一个小的变化将会产生怎样巨大的影响

20、在开发环境测试所有 schema 变动,而不是在生产环境的镜像上去做

DDL操作一定要慎重

21、不要随意改变你的配置文件,这可能产生非常大的影响

修改配置文件都需要在测试环境验证后再上生产

22、有时候,少量的配置会更好

增加参数需要对该参数所带来的后果有一定的了解。

23、质疑使用通用的MySQL配置文件

配置最好都自定义。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Linyb极客之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • mysql schema优化建议
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档