From 948aef0fe43c1f142c8b4fb144a16ec9c50e1992 Mon Sep 17 00:00:00 2001 From: lxh2875931338 Date: Tue, 28 Jul 2026 21:41:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=83=A8=E5=88=86=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/db.go b/db.go index c6eb933..5cb93ff 100644 --- a/db.go +++ b/db.go @@ -66,8 +66,14 @@ type User struct { // ============================================================ func InitDB() error { + // 确保 data 目录存在 + if err := os.MkdirAll("./data", 0755); err != nil { + return fmt.Errorf("创建数据目录失败: %w", err) + } + + dbPath := "./data/frpc-console.db" var err error - DB, err = sql.Open("sqlite", "./frpc-console.db") + DB, err = sql.Open("sqlite", dbPath) if err != nil { return err } @@ -210,13 +216,13 @@ func setSchemaVersion(version string) error { } func backupDatabase() (string, error) { - src := "./frpc-console.db" + src := "./data/frpc-console.db" if _, err := os.Stat(src); os.IsNotExist(err) { return "", nil } timestamp := time.Now().Format("20060102_150405") - dst := fmt.Sprintf("./frpc-console.db.pre-%s.%s", SchemaVersion, timestamp) + dst := fmt.Sprintf("./data/frpc-console.db.pre-%s.%s", SchemaVersion, timestamp) srcFile, err := os.Open(src) if err != nil { @@ -245,7 +251,7 @@ func restoreDatabase(backupPath string) error { } defer srcFile.Close() - dstFile, err := os.Create("./frpc-console.db") + dstFile, err := os.Create("./data/frpc-console.db") if err != nil { return err }