存储后端配置
为了提升可读性,存储文档已拆分为“概览 + 专题页”。
文档导航
基础说明
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://...