【已解答】数据库备份出错,无法修复,要如何处理呢?
为了能快速了解并处理您的问题,请提供以下基础信息:面板、插件版本:WINDOWS BT 免费版8.5.2系统版本:WINDOWS 10
问题描述:在面板数据库中点击备份的时候出错。
相关截图(日志、错误):
时间:2026-06-10 03:03:39
版本:8.5.2
系统:Windows 10 Pro (build 19045) x64 (Gogo1.23.12)
User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36 Edg/146.0.0.0
Stack:
1. exception recovered
1).runtime.gopanic
runtime/panic.go:791
2).runtime.mapassign_faststr
runtime/map_faststr.go:225
3).btPanel/internal/service/public.SetSearchHistory
btPanel/internal/service/public/search.go:147
4).btPanel/internal/controller/data.(*ControllerV1).GetDataList
btPanel/internal/controller/data/data_v1_data.go:26
5).reflect.Value.call
reflect/value.go:584
6).reflect.Value.Call
reflect/value.go:368
7).btPanel/internal/cmd.SetCtx
btPanel/internal/cmd/cmd.go:109
8).btPanel/internal/cmd.CheckCsrf
btPanel/internal/cmd/cmd.go:119
9).btPanel/internal/cmd.ResponseParam
btPanel/internal/cmd/cmd.go:56
10). btPanel/internal/service/middlewares.VerifyBindUserName
btPanel/internal/service/middlewares/check_user_login.go:116
11). btPanel/internal/service/middlewares.VerifyLogin
btPanel/internal/service/middlewares/check_user_login.go:77
12). btPanel/internal/service/middlewares.ApiFullBaseCheckIPDoamin
btPanel/internal/service/middlewares/check_api_ip_doamin.go:353
2. assignment to entry in nil map
重启了电脑,也尝试修复,在面板中修复,点击无用,显示已是最新版本。
在CMD中修复,也一直修复不了。
用AI搜索了一下答案:如下
看来重启面板和电脑并不能解决根本问题,因为最后那行报错真相大白了:assignment to entry in nil map这是一个非常典型的 Go 语言代码 Bug。简单来说,是宝塔面板在更新到 8.5.2 版本后,开发人员在编写“记录搜索历史”或“获取数据列表(GetDataList)”的代码时,忘记初始化一个用来存数据的字典(Map),就直接往里面写数据了。
大家有什么解决方案吗?
补充一下图片,刚才发贴的时候说字数太多了。放不下。
杨小宝哥哥 发表于 2026-6-10 03:03
补充一下图片,刚才发贴的时候说字数太多了。放不下。
您好,您找到 BtSoft 目录下的panel/data/search.json这个文件
把里面的内容删掉,只保留
{}
然后保存后,重启面板,
看下是否还会有报错 大炮运维V587 发表于 2026-6-10 09:23
您好,您找到 BtSoft 目录下的panel/data/search.json这个文件
把里面的内容删掉,只保留
{}
果然可以了,我原来的这个文件里面是空白的,我添加了 {} 这个符号后正常可用了。
页:
[1]