Documentation
¶
Overview ¶
Package database 提供 SDK 级别的多站点数据库连接管理。
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterSiteInitFunc ¶
func RegisterSiteInitFunc(fn SiteInitFunc)
RegisterSiteInitFunc 注册站点数据库初始化回调(线程安全,幂等追加)。
Types ¶
type DBConfig ¶
type DBConfig struct {
Host string `json:"host"`
Port int `json:"port"`
User string `json:"user"`
Password string `json:"password"`
DBName string `json:"database"`
Charset string `json:"charset"`
}
DBConfig 站点独立库连接配置(从 Site.DBConfig JSON 解析)。
type DBManager ¶
type DBManager struct {
// contains filtered or unexported fields
}
DBManager 多站点数据库连接管理器。
masterDB 用于全局级操作(管理员/角色/插件等全局表), defaultDB 用于 shared 模式站点的数据操作, siteDBs 缓存 independent 模式站点的独立连接(按 site_id 索引)。
func InitManager ¶
InitManager 初始化全局 DBManager(幂等,sync.Once 保护)。
func (*DBManager) CloseSiteDB ¶
CloseSiteDB 关闭指定站点的独立数据库连接并从缓存移除。
func (*DBManager) GetDefaultDB ¶
GetDefaultDB 返回默认站点库连接(shared 模式共用)。
type SiteInitFunc ¶
SiteInitFunc 是站点数据库初始化回调函数(AutoMigrate + Seed)。
Click to show internal directories.
Click to hide internal directories.