ZyPlayer媒体数据库备份与恢复:保护你的观影记录
你是否曾遇到过这样的情况:更换设备或重装系统后,多年积累的观影记录和收藏夹突然消失?作为跨平台桌面端视频资源播放器,ZyPlayer(免费高颜值)提供了完善的媒体数据库管理功能,让你轻松备份和恢复宝贵的观影数据。本文将详细介绍如何通过图形界面完成数据库备份、恢复和自动同步,即使是电脑新手也能轻松掌握。
为什么需要备份媒体数据?
ZyPlayer的媒体数据库存储了你的全部观影记忆,包括:
- 历史播放记录(src/main/core/db/service/history.ts)
- 收藏的影片和频道(src/main/core/db/service/star.ts)
- 自定义的播放设置(src/main/core/db/service/setting.ts)
- 媒体服务器配置(src/main/core/db/service/drive.ts)
这些数据默认存储在应用的本地数据库中,一旦遇到软件升级故障、系统崩溃或设备更换,就可能永久丢失。定期备份能确保你在任何情况下都能快速恢复观影环境。
数据库备份与恢复的工作原理
ZyPlayer采用模块化数据管理架构,通过db.service实现全量数据导出功能:
// 数据库全量备份实现 [src/main/core/db/service/db.ts]
async all() {
const res: { [key: string]: any } = {};
res.tbl_setting = await setting.all();
res.tbl_site = await site.all();
res.tbl_analyze = await analyze.all();
res.tbl_channel = await channel.all();
res.tbl_iptv = await iptv.all();
res.tbl_drive = await drive.all();
res.tbl_history = await history.all(); // 观影记录备份
res.tbl_star = await star.all();
return res;
}
备份文件采用JSON格式存储,包含所有用户配置和媒体数据。恢复时通过source方法重建数据库:
// 数据恢复实现 [src/main/core/db/service/db.ts]
async source(doc) {
const tableSetters = {
site: site.set,
iptv: iptv.set,
history: history.set, // 恢复观影记录
// 其他数据表...
};
for (const key in doc) {
const prefix = key.substring(4);
if (tableSetters[prefix]) {
await tableSettersprefix;
}
}
}
手动备份媒体数据
步骤1:打开数据管理界面
- 点击主界面右上角设置按钮(⚙️)
- 在左侧导航栏选择基础设置(src/renderer/src/pages/setting/components/base/index.vue)
- 滚动到底部点击数据管理按钮,打开高级数据操作面板
步骤2:导出备份文件
在数据管理对话框中:
- 展开配置导出面板
- 勾选需要备份的数据类型(建议全选):
- ☐ 网站数据源
- ☐ IPTV频道
- ☐ 观影历史
- ☐ 收藏列表
- ☐ 播放设置
- 点击导出按钮,选择保存位置
- 系统将生成名为
zyfun_config_YYYYMMDD_HHmmss.json的备份文件
备份文件建议存储在云盘同步文件夹(如OneDrive、坚果云)中,确保多设备可访问。
数据恢复操作指南
当你需要在新设备上恢复数据或修复数据库时:
从备份文件恢复
- 打开数据管理界面(同上)
- 展开配置导入面板
- 选择本地文件选项
- 点击上传按钮,选择之前保存的JSON备份文件
- 选择导入模式:
- 追加:保留现有数据,添加备份内容
- 覆盖:用备份数据替换当前配置
从网络源恢复
如果你的备份文件存储在WebDAV服务器或媒体服务器上:
- 选择远程地址选项
- 输入备份文件的URL
- 选择导入模式完成恢复
恢复操作完成后,应用会自动刷新数据并重启生效(src/renderer/src/pages/setting/components/base/index.vue#L380)
自动同步与高级备份策略
WebDAV自动同步
ZyPlayer支持将媒体数据自动同步到WebDAV服务器:
- 在数据管理界面配置WebDAV信息:
- 服务器地址(如
https://dav.jianguoyun.com/dav/) - 用户名和密码
- 服务器地址(如
- 启用自动同步开关
- 系统将定期备份数据并同步到指定服务器
定时备份建议
- 轻度用户:每月备份一次
- 重度用户:每周备份一次
- 媒体服务器管理员:启用自动同步功能
备份文件命名建议添加版本信息,例如:zyplayer_backup_v3.4.0_20231025.json
常见问题解决
备份文件过大怎么办?
如果备份文件超过10MB,通常是因为包含大量观影历史。可以:
- 在导出时取消勾选观影历史
- 使用数据库清理功能(src/renderer/src/pages/setting/components/base/components/DialogData.vue#L510)
- 单独导出收藏列表和设置
恢复后播放列表丢失?
这通常是因为媒体文件路径变更导致:
- 检查媒体服务器配置是否正确(src/main/core/db/service/drive.ts)
- 使用重新扫描功能更新媒体库索引
- 确保网络存储设备已正确挂载
备份文件无法导入?
可能是备份文件版本不兼容:
- 确认当前软件版本与备份时一致
- 尝试用文本编辑器打开JSON文件检查格式
- 通过出厂设置重置后重试(src/renderer/src/pages/setting/components/base/index.vue#L354)
最佳实践与注意事项
- 定期测试恢复流程:每季度至少进行一次恢复测试,确保备份文件有效
- 多位置存储:重要备份应同时保存在本地硬盘、云盘和U盘
- 版本管理:重大更新前建议创建备份,命名格式包含版本号
- 隐私保护:备份文件包含个人观影记录,请勿上传至公共存储
通过本文介绍的方法,你可以确保宝贵的观影数据万无一失。记住:数据备份的成本远低于重新构建观影收藏的时间和精力。
官方数据库操作API文档:src/main/core/db/service/db.ts 完整数据管理界面实现:src/renderer/src/pages/setting/components/base/components/DialogData.vue
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0153- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112

