这是一个用于将 Whitecloud v0.4.0 数据迁移到ReinaManager的工具。
- ReinaManager v0.25.0 及以上版本
- Whitecloud v0.4.0 数据库结构
- 使用 SeaORM 进行数据库操作
- 支持 SQLite 数据库
- 自动迁移游戏数据、会话记录和统计信息
准备工作:
- 找到
db.3.sqlite文件,它一般位于whitecloud安装路径\resources\data\db.3.sqlite - 将
db.3.sqlite放在程序同一目录 - 至少启动过一次 ReinaManager,确保目标数据库已经存在
运行:
-
双击可执行文件运行。
-
选择 ReinaManager 版本:
- 安装版:输入
1或直接按 Enter。 - 便携版:输入
2,然后在弹出的目录窗口中选择包含 ReinaManager 的根目录。
- 安装版:输入
-
程序在迁移前会备份数据库到 ReinaManager 设置的数据库备份目录;未设置或目录无效时,保存到目标数据库同目录下的
backups/文件夹。文件名格式类似:reina_manager_20250820_154719_178.db -
迁移完成后,程序会提示按任意键退出。
注意:请在迁移前确保已保存 ReinaManager 中的所有未保存数据,迁移期间将尝试关闭 ReinaManager 进程以保证数据库完整性。
gameDir->localpath(游戏目录)exePath->executable(启动文件名)saveDir->savepathname->custom_dataJSON 中的name字段uuid-> 用于关联其他表的数据- 固定值:
id_type= "Whitecloud"clear= 1
- 未映射字段:
game_sources外部数据源记录不写入autosave、maxbackups、le_launch、magpie、created_at、updated_at等字段由 Reina 数据库默认值处理
- 迁移时不再单独迁移游戏时间字段,所有时间相关内容通过会话和统计表处理
- 从
history表迁移到game_sessions表 - 计算游戏时长和统计信息
| 旧字段 | 新字段 | 说明 |
|---|---|---|
| gameDir | localpath | 游戏目录 |
| exePath | executable | 启动文件名 |
| saveDir | savepath | 存档路径 |
| uuid | - | 用于关联其他表 |
| - | id_type | 固定为 "Whitecloud" |
| - | clear | 固定为 1 |
| - | custom_data | JSON 列,包含 name |
未映射的 Reina 字段不由迁移器声明或写入;数据库会使用 NULL 或表结构中的默认值。
- 迁移时不再单独迁移游戏时间字段,所有时间相关内容通过会话和统计表处理
- 从
history表迁移游戏会话数据 - 计算会话持续时间
- 生成统计信息