开篇废话
之前把 Jellyfin 升级到了 10.11.0 基本上所有的媒体库都炸了,表现为无法找到媒体库的弹窗:

无法找到有效的媒体源来播放。
拖了1个月实在是受不了了,因为我用的音乐软件 finamp 也几乎没法正常用了,专辑里面没有任何 track
所以问了下 Claude Code 然后稍微修复了下。
修修补补继续用= =
正文
当然先给解决方案了,有兴趣的可以滚下去看我的排查的部分。
首先请备份你目前已经烂掉的数据库,
不出意外的话,你的 jellyfin 的数据库文件在:
/var/lib/jellyfin/jellyfin.db
总之停止服务然后备份下:
systemctl stop jellyfin
cd /var/lib/jellyfin/
cp jellyfin.db jellyfin.db.bak
然后我们执行第一阶段的修复 sql:
wget https://blog.huggy.moe/attachment/2025/9/complete_fix.sql
sqlite3 jellyfin.db < complete_fix.sql
然后理论上就可以用了,如果还是一样,后台点一下重新扫描所有媒体库再观察看看。
这个是我的执行日志:
❯ sqlite3 jellyfin.db < complete_fix.sql
========================================
= Jellyfin Database Repair Script =
========================================
步骤 1/2: 修复 PrimaryVersionId 字段...
✓ 已更新 27100 个媒体项目的 PrimaryVersionId
步骤 2/2: 重建 AncestorIds 表...
检查缺失记录数...
✓ 已删除旧的 AncestorIds 记录
生成新的 AncestorIds 记录...
✓ 已插入新的 AncestorIds 记录
========================================
= 修复完成统计 =
========================================
音频项目总数: 23815
PrimaryVersionId 已设置的音频项目: 23815
AncestorIds 表中的音频项目数: 23815
缺失 AncestorIds 的音频项目数: 0
✓ 所有修复已完成!
当然还是不行的话,还有个加强的 sql:
wget https://blog.huggy.moe/attachment/2025/9/2-trigger_rescan.sql
sqlite3 jellyfin.db < 2-trigger_rescan.sql
❯ sqlite3 jellyfin.db < trigger_rescan.sql
========================================
准备触发重新扫描
========================================
旧专辑数量: 5011
旧音频文件数量: 22180
旧艺术家数量: 4994
========================================
========================================
更新完成统计
========================================
已重置专辑数量: 5011
已重置音频文件数量: 22180
已重置艺术家数量: 4994
========================================
脚本执行完成!
现在可以在 Jellyfin 管理面板中点击 "Scan All Libraries"
建议勾选 "Search for missing metadata" 选项
========================================
ok
理论上就药到病除了。
当然目前理论上只是音乐仓库好了,电视剧的裤好像还是坏的,但是我之前手动重建了,就不管了。
排查
我们浏览器开个 F12 看看为啥出现这个情况:
看得出来,请求了 /Users/xxx/Items/? 的路由的时候出现了问题,返回为空,然后我也有能正常播放的专辑,于是我把样本扔给 claude 分析:

然后实际上一搜,就有别人也遇到了这个情况:
- https://github.com/jellyfin/jellyfin/issues/14900 - 播放/混音按钮失败
- https://github.com/jellyfin/jellyfin/issues/15299 - 季度文件夹显示空
GitHub 里面的解决方案是如果有备份的话,可以回滚,然后避开10.11.0-10.11.2 版本,从 10.10.7 直接升级到 10.11.3 理论上就没这个问题了:
This issue was fixed in 10.11.3 ( #15446). There was a bug in 10.11.0 → 10.11.2 for users migrating their old DB (10.10.x) to 10.11.x. The ancestor IDs were not migrated. This caused several issues, such as not being able to play or shuffle an album, playlists disappearing, plus other issues.
当然我本地就没备份了,所以只能继续排查了。
claude 最后就帮我确认是 AncestorIds 出现了问题:
怎么シャミ子还在追我,只因为我离多摩川很近吗(
然后我打完补丁的数据库传进去后,好像还是没啥效果,又问了下,然后 claude 让我强制过期下扫描库:

也就是本文的第二个 sql ,然后就好了。
(当然实际上 claude 排查了快1个小时,做了好几个 sql 都失败了)
总结
嘛,开源破车凭本事修属于。
完