Skip to content

存储后端配置

为了提升可读性,存储文档已拆分为“概览 + 专题页”。

文档导航

基础说明

Shortlinker 支持多种存储后端,可根据规模与运维能力选择方案。所有数据库后端均基于 Sea-ORM 与异步连接池,支持生产部署。

📋 存储相关启动配置位于 database.database_url,详见 配置指南

Sea-ORM 数据库层

从 v0.2.0 开始,Shortlinker 使用 Sea-ORM 作为数据库抽象层,提供:

  • 原子化 upsert 操作:防止竞态条件,确保并发安全
  • 自动数据库类型检测:从 database.database_url 自动推断数据库类型
  • 自动创建 SQLite 数据库:首次运行时自动创建数据库文件
  • 自动 schema 迁移:无需手动运行 SQL 脚本
  • 统一接口:所有数据库使用相同的代码路径
  • 类型安全:编译时检查数据库操作

💡 提示:当前版本 不读取 DATABASE_BACKEND。Shortlinker 会从 database.database_url 自动推断数据库类型:

  • SQLite:sqlite://... / 以 .db.sqlite 结尾的文件路径 / :memory:
  • MySQL/MariaDB:mysql://... / mariadb://...(会按 MySQL 协议处理)
  • PostgreSQL:postgres://... / postgresql://...

基于 MIT 许可证发布