Skip to content

存储配置

本文介绍如何配置系统的存储设置。

存储方案

当前版本仅支持 本地存储,视频和图片文件存储在服务器本地磁盘。

特点说明
存储位置服务器本地磁盘
访问速度快,无网络延迟
成本仅磁盘费用
适用场景中小规模部署

存储路径配置

视频存储

根据 config.yaml 中的 upload 配置:

yaml
upload:
  temp_dir: "../app/public/temp"      # 临时文件目录
  storage_dir: "../app/public/videos" # 视频存储目录

图库存储

根据 config.yaml 中的 gallery 配置:

yaml
gallery:
  upload_path: "../app/public/uploads/gallery"  # 图片存储目录

目录结构

bash
app/public/
├── temp/              # 临时文件(上传中的文件)
├── videos/            # 转码后的视频文件
   └── {video_id}/    # 每个视频一个目录
       ├── index.m3u8 # HLS 播放列表
       ├── *.ts       # 视频切片文件
       └── *.jpg      # 视频截图
└── uploads/
    └── gallery/       # 图库图片
        ├── original/  # 原图
        └── thumbnail/ # 缩略图

Nginx 配置

确保 Nginx 正确配置静态资源访问路径:

nginx
# 视频和上传资源
location ^~ /public/ {
    alias /www/wwwroot/mika/app/public/;  # 修改为实际路径
}

注意

请将路径修改为你的实际项目路径。

存储管理

查看存储使用

数据统计 页面可以查看:

  • 总存储空间使用量
  • 视频文件占用空间
  • 图片文件占用空间
  • 临时文件占用空间

清理临时文件

系统会定期清理临时文件,也可以手动清理:

  1. 进入 系统设置存储管理
  2. 点击 清理临时文件
  3. 确认清理

日志配置

根据 config.yaml 中的 log 配置:

yaml
log:
  level: info                          # 日志级别
  file: "../logs/mika-backend.log"     # 日志文件路径
  max_size: 100                        # 单个日志文件最大大小 (MB)
  max_backups: 10                      # 保留的日志文件数量
  max_age: 30                          # 日志保留天数
  compress: true                       # 是否压缩旧日志

上传限制

视频上传限制

配置项默认值说明
最大文件大小500 MBmax_size: 524288000
分片大小5 MBchunk_size: 5242880

图片上传限制

配置项默认值说明
最大文件大小10 MBmax_file_size: 10485760

修改上传限制

  1. 修改 config.yaml 中的相应配置
  2. 修改 Nginx 配置的 client_max_body_size
  3. 重启服务生效

磁盘空间管理

监控磁盘空间

建议设置磁盘空间监控告警:

bash
# 查看磁盘使用情况
df -h

# 查看目录大小
du -sh /www/wwwroot/mika/app/public/*

扩展存储空间

当磁盘空间不足时:

  1. 扩展磁盘 - 增加服务器磁盘容量
  2. 清理文件 - 删除不需要的视频和临时文件
  3. 迁移数据 - 将存储目录迁移到更大的磁盘

迁移存储目录

如需迁移存储目录:

  1. 停止后端服务
  2. 复制文件到新目录
  3. 修改 config.yaml 中的路径配置
  4. 修改 Nginx 配置
  5. 重启服务

备份建议

定期备份

建议定期备份以下内容:

内容路径说明
视频文件app/public/videos/转码后的视频
图片文件app/public/uploads/上传的图片
配置文件server/configs/系统配置
数据库MySQL 数据库业务数据

备份命令

bash
# 备份视频文件
tar -czvf videos_backup.tar.gz app/public/videos/

# 备份图片文件
tar -czvf uploads_backup.tar.gz app/public/uploads/

# 备份配置文件
cp -r server/configs/ configs_backup/

# 备份数据库
mysqldump -u用户名 -p密码 数据库名 > database_backup.sql

常见问题

Q: 上传失败?

  1. 检查存储目录权限
  2. 检查磁盘空间是否充足
  3. 检查 Nginx 上传限制配置
  4. 查看错误日志

Q: 视频无法播放?

  1. 检查文件是否存在
  2. 检查 Nginx 配置的 public 路径
  3. 检查文件访问权限
  4. 查看浏览器控制台错误

Q: 磁盘空间不足?

  1. 清理临时文件目录
  2. 删除回收站中的文件
  3. 删除不需要的视频
  4. 扩展磁盘空间

下一步

基于 MIT 许可发布