feat(db): 数据库层 MySQL 适配(方言钩子/同步驱动映射/种子方言分支)
- infrastructure/db.py:MySQL 方言编译钩子(String 无长度→VARCHAR(255),Text→MEDIUMTEXT); 新增 sync_database_url/make_sync_engine(sqlite+aiosqlite→sqlite,mysql+asyncmy→mysql+pymysql) - models.py:sessions.token 显式 String(2048)、system_configs.value 改 Text(存量数据超 255,MySQL 需兼容) - seed.py:_add_agent 幂等插入按方言分支(SQLite=INSERT OR IGNORE / MySQL=INSERT IGNORE) - park/tenants.py:同步只读引擎改走 make_sync_engine(原 +aiosqlite replace 对 MySQL 无效) - 依赖补 pymysql;.env.example 补 PINEAGENTS_DEMO_DATABASE_URL 说明
This commit is contained in:
@@ -25,3 +25,8 @@ PINEAGENTS_WECHATPAY_PACKAGES=[{"id":"p10","amount":10,"bonus":0,"label":"10 元
|
||||
PINEAGENTS_RECHARGE_MIN_YUAN=1
|
||||
PINEAGENTS_RECHARGE_MAX_YUAN=5000
|
||||
PINEAGENTS_RECHARGE_EXPIRE_MINUTES=15
|
||||
|
||||
# ---- 数据库(SQLite→MySQL 切换;未配置默认 serverdata/data/app.db)----
|
||||
# 示例:mysql+asyncmy://user:pass@192.168.1.3:8091/opc?charset=utf8mb4
|
||||
# 首次迁移:uv run python scripts/migrate_sqlite_to_mysql.py(建表+搬数据+行数校验)
|
||||
PINEAGENTS_DEMO_DATABASE_URL=
|
||||
|
||||
Reference in New Issue
Block a user