Skip to content

运维手册

1. 系统架构概述

本系统采用微服务架构,前端使用Vue2和UniApp开发,后端基于Spring Boot框架实现,使用MySQL数据库存储数据,并使用Redis作为缓存中间件。系统部署在CentOS操作系统的服务器上。

2. 后端接口

  • 开发语言:Java(JDK1.8)
  • 框架:SpringBoot(版本号:2.7.10)
2.1 启动和停止服务
  • 启动命令:

    sh
    bash
    java -jar your-springboot-application.jar
  • 停止命令: 使用

    kill

    命令,找到进程ID并终止:

    ps aux | grep your-springboot-application.jar
    kill -9 <PID>
2.2 配置管理

后端配置文件application.properties包括数据库连接、Redis配置等信息。配置文件应包含以下重要内容:

  • 数据库配置

    spring.datasource.url=jdbc:mysql://localhost:3306/database_name?useSSL=false&serverTimezone=UTC
    spring.datasource.username=root
    spring.datasource.password=your_password
  • Redis配置

    properties复制代码spring.redis.host=localhost
    spring.redis.port=6379
    spring.redis.password=your_password
2.3 日志管理

Spring Boot默认支持日志输出,通常情况下使用logback。可以在src/main/resources/application.properties中设置日志级别:

logging.level.root=INFO
logging.level.org.springframework.web=DEBUG

3. 前端页面

  • 开发语言:JavaScript
  • 框架:Vue2,UniApp(版本号:3.6.3)
3.1 构建与部署
  • 安装依赖:

    sh
    bash
    npm install
  • 构建命令:

    sh
    
    npm run build
  • 将构建后的文件部署到Nginx服务器上,配置Nginx的server块以支持前端静态文件的访问。

4. 数据库配置与管理

  • 数据库版本:MySQL 5.7
  • 备份方案:增量备份
4.1 增量备份配置

增量备份通过MySQL的二进制日志实现,配置步骤如下:

  1. 确保

    my.cnf

    配置文件中启用了二进制日志:

    sh
    [mysqld]
    log-bin=mysql-bin
    server-id=1
    max_binlog_size=100M
    binlog_format=row
  2. 启动数据库并查看二进制日志:

    sh
    SHOW BINARY LOGS;
  3. 定期执行

    FLUSH LOGS

    命令来刷新日志并创建新的日志文件:

    sh
    FLUSH LOGS;
  4. 定时备份二进制日志:

    • 将二进制日志文件定期备份到安全位置。
    • 增量备份可以通过读取二进制日志文件来恢复数据库。
4.2 数据恢复
  • 断点恢复:通过二进制日志文件及其时间戳来进行恢复。
  • 时间恢复:根据具体时间段,通过二进制日志的时间戳恢复数据。

5. 中间件配置

  • Redis:版本号 7.4
5.1 Redis安装与配置
  1. 安装Redis

    sh
    sudo yum install redis
  2. 配置Redis(在

    /etc/redis.conf

    中进行以下配置)

    sh
    bind 127.0.0.1
    port 6379
    requirepass your_password
  3. 启动Redis服务

    sh
    sudo systemctl start redis
    sudo systemctl enable redis

6. 部署环境要求

  • 操作系统:CentOS (x86_64)
  • 最低配置:
    • CPU:2核心
    • 内存:4GB
    • 硬盘:500GB
  • 推荐配置:
    • CPU:4核心
    • 内存:8GB
    • 硬盘:1TB
6.1 必备部署软件
  1. Nginx:作为反向代理服务器,部署前端静态文件和后端服务的API接口。

    • 安装命令:

      sh
      sudo yum install nginx
    • 配置文件:在/etc/nginx/nginx.conf中进行配置。

  2. JDK 1.8:用于运行后端Java服务。

    • 安装命令:

      sh
      sudo yum install java-1.8.0-openjdk
  3. MySQL 5.7:数据库服务。

    • 安装命令:

      sh
      sudo yum install mysql-server
  4. Redis:缓存中间件。

7. 安全性与监控

  • 防火墙配置

    • 开启80端口(Nginx),3306端口(MySQL),6379端口(Redis)等服务所需端口。

    • 使用

      firewalld

      配置允许的端口:

      sh
      sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
      sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
      sudo firewall-cmd --zone=public --add-port=6379/tcp --permanent
      sudo firewall-cmd --reload
  • 监控工具

    • Prometheus:用于监控后端Java应用、数据库、Redis等服务。
    • Grafana:与Prometheus配合使用,展示监控数据。

8. 定期运维任务

  • 数据库备份:每日执行全量备份,定期执行增量备份。
  • 日志清理:定期清理老旧日志文件,确保磁盘空间充足。
  • 系统健康检查:定期检查服务器的CPU、内存、磁盘使用情况,及时发现瓶颈。

附录

  1. 常用命令汇总
    • 启动Spring Boot服务:java -jar your-app.jar
    • 查看MySQL二进制日志:SHOW BINARY LOGS;
    • 刷新MySQL二进制日志:FLUSH LOGS;
    • 查看Redis状态:redis-cli ping
  2. 常见问题及解决方案
    • Redis连接失败:检查Redis配置文件中的bindport是否正确设置,确保防火墙开放了6379端口。
    • MySQL连接问题:检查数据库连接配置是否正确,确保数据库服务已启动并且防火墙未阻挡3306端口。

本内容仅限内部使用,技术细节以实际代码为准