数据库和缓存工具怎么整理:SQLite、MySQL、MyBatis 与 Redis

2次阅读
没有评论

数据库和缓存工具笔记适合做成“入口页”:不追求把每个技术讲完,而是记录常用命令、配置习惯、排障方向和后续深入链接。

SQLite 适合轻量本地数据

SQLite 适合:

  • 本地小工具。
  • 临时数据分析。
  • 单机缓存。
  • 桌面应用。
  • 测试样例。

它不需要单独服务进程,文件就是数据库。缺点是并发写入能力有限,不适合高并发服务端主库。

MySQL 新库默认配置

新建 MySQL 数据库时,建议默认使用:

create database demo
  default character set utf8mb4
  default collate utf8mb4_general_ci;

utf8mb4 能正确支持 emoji 和更多 Unicode 字符。排序规则要结合业务选择,普通中文内容站和工具库一般先统一即可。

授权语句要谨慎

MySQL 授权示例经常长这样:

grant all privileges on *.* to 'user'@'host' identified by 'password' with grant option;
flush privileges;

公开文档里不要保留真实账号、真实密码和真实来源 IP。实际使用时也不建议随便给 *.*with grant option,应该按库、表、权限最小化。

MyBatis 分页要看 SQL

MyBatis-Plus 或自定义分页都要关注最终 SQL:

  • 是否真的带了 limit。
  • count SQL 是否过重。
  • JOIN 是否可以裁剪。
  • 排序字段是否有索引。
  • 深分页是否需要改游标分页。

分页插件只是生成 SQL,性能仍由 SQL 本身决定。

Redis 工具要区分数据结构

Redis 常见选择:

  • String:计数、简单缓存、序列化对象。
  • Hash:对象字段缓存,适合局部更新。
  • List:队列和时间线。
  • Set:去重集合。
  • ZSet:排行榜和带分数排序。

使用 Java 工具类时,不要把所有对象都直接 JSON 到 String。先看访问模式,再选结构。

二级缓存要谨慎

二级缓存能减少数据库压力,但也会引入一致性问题。判断时看:

  • 数据是否频繁变更。
  • 是否允许短暂不一致。
  • 是否有失效策略。
  • 是否能按 key 精确删除。
  • 是否有缓存穿透和雪崩保护。

缓存不是越多越好,关键是命中率和一致性边界。

实用结论

数据库和缓存工具笔记要服务日常排障:SQLite 适合本地,MySQL 注意字符集和授权,MyBatis 分页看最终 SQL,Redis 先选对数据结构。工具只是入口,真正稳定靠配置边界、权限控制和可观察性。

正文完
 0
bdspAdmin
版权声明:本站原创文章,由 bdspAdmin 于2026-07-05发表,共计987字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)