SQLite

SQLite 是一个轻量级、无服务器、自包含的 SQL 数据库引擎,广泛应用于应用程序的本地数据存储。 了解更多信息请点击此处

使用示例

Better Auth 支持多种 SQLite 驱动程序。请根据您的环境选择最适合的一种:

Better-SQLite3(推荐)

这是 Node.js 中最流行且最稳定的 SQLite 驱动程序:

auth.ts
import { betterAuth } from "better-auth";
import Database from "better-sqlite3";

export const auth = betterAuth({
  database: new Database("database.sqlite"),
});

更多信息,请查阅 Kysely 关于 SqliteDialect 的文档。

Node.js 内置 SQLite(实验性)

node:sqlite 模块仍处于实验阶段,可能随时发生变化。它需要 Node.js 22.5.0 或更高版本。

从 Node.js 22.5.0 开始,您可以使用内置的 SQLite 模块:

auth.ts
import { betterAuth } from "better-auth";
import { DatabaseSync } from "node:sqlite";

export const auth = betterAuth({
  database: new DatabaseSync("database.sqlite"),
});

要使用 Node.js SQLite 运行您的应用程序:

node your-app.js

Bun 内置 SQLite

您也可以使用 Bun 中内置的 SQLite 模块,它与 Node.js 版本类似:

auth.ts
import { betterAuth } from "better-auth";
import { Database } from "bun:sqlite";
export const auth = betterAuth({
  database: new Database("database.sqlite"),
});

模式生成与迁移

Better Auth CLI 允许您根据 Better Auth 配置和插件生成或迁移数据库模式。

SQLite 模式生成

SQLite 模式迁移

✅ 支持✅ 支持
模式生成
npx @better-auth/cli@latest generate
模式迁移
npx @better-auth/cli@latest migrate

附加信息

SQLite 通过 Kysely 适配器在底层得到支持,Kysely 支持的任何数据库也同样受支持。(在此处了解更多

如果您正在寻求性能改进或技巧,请查看我们的性能优化指南

On this page