海康威视综合安防平台MariaDB数据库恢复SAC数据
一、问题背景
海康威视综合安防平台的SAC(安防中心)数据和MDB(管理数据库)数据存储在Linux服务器的不同位置。当SAC数据库损坏或数据丢失时,需要进行恢复操作。本文档介绍如何从备份中恢复SAC数据库数据。
二、环境信息
- 服务器IP:10.192.10.20
- 操作系统:Linux
- SAC数据路径:/opt/hikvision/web/components/
三、恢复步骤
步骤1:备份当前数据
1.1 登录服务器
使用SSH登录服务器:http://10.192.10.20:9012/
进入SAC数据目录:/opt/hikvision/web/components/sac.1/data
1.2 检查备份文件
检查备份目录是否存在:
- /opt/hikvision/web/components/sac.1/data/sac_metadata_backup/sam_base
- /opt/hikvision/web/components/sac.1/data/sac_metadata_backup/sac_web
如果备份文件存在,可以直接恢复。
1.3 备份当前SAC数据
在恢复前,先备份当前的SAC数据:
\cp -af /opt/hikvision/web/components/sac.1/data /opt/hikvision/web/components/sac.1_backup
步骤2:恢复数据库
2.1 准备恢复脚本
找到恢复脚本:fatal_recovery_db.sh 和 fully_recovery_db.sh
脚本位置:/opt/hikvision/web/components/sac.1/script/sac
2.2 设置执行权限
chmod +x fatal_recovery_db.sh fully_recovery_db.sh
2.3 选择恢复方式
有两种恢复方式:
- 方式1:fatal_recovery_db.sh - 快速恢复,适用于数据库损坏但备份完整的情况
- 方式2:fully_recovery_db.sh - 完全恢复,适用于完全重建数据库的情况
2.4 执行恢复
根据实际情况选择恢复脚本执行:
- 如果MDB数据库正常,使用 fatal_recovery_db.sh
- 如果需要完全恢复,使用 fully_recovery_db.sh
/opt/hikvision/web/components/sac.1/script/sac/fatal_recovery_db.sh

恢复完成后,检查数据库状态:
备份位置:/opt/hikvision/web/components/mdblinux64.1/data_old_backup
四、验证恢复结果
- 检查SAC服务状态
- 登录综合安防平台
- 验证数据完整性
- 测试各项功能
五、常见问题
问题1:恢复脚本执行失败
- 检查脚本权限
- 确认数据库服务状态
- 查看日志文件
问题2:恢复后数据不完整
- 检查备份文件完整性
- 确认恢复方式正确
- 重新执行恢复
六、注意事项
- 恢复前务必备份当前数据
- 选择正确的恢复方式
- 恢复过程中不要中断
- 恢复后验证数据完整性
七、技术支持
如遇技术问题,请联系:
- 海康威视官方客服:400-800-5992
- 技术支持邮箱:support@hikvision.com
- 官网:www.hikvision.com