1. 概述
1.1 版本
报表服务器版本 | 功能变更 |
---|---|
11.0 | - |
1.2 应用场景
备份工程的必要性在于保护数据、确保业务连续性和提供灵活性。
1)数据保护:通过备份,管理员可以恢复丢失或损坏的业务数据,确保数据的完整性和可用性。
2)业务连续性:通过备份,在发生灾难性事件时,管理员可以将工程恢复到之前的状态以继续运营业务,减少停机时间和数据损失。
3)版本控制和回退:通过备份,管理员可以创建不同时间点的工程快照,记录工程的状态和变更,便于版本控制、回退到旧版本或查找问题的更改。
4)环境迁移和部署:备份工程有助于在不同的环境中迁移和部署项目。通过备份,可以在新环境中恢复项目的完整结构和配置,简化迁移过程并减少错误。
5)安全性和合规性:通过备份,管理员可以将工程还原到之前的安全状态,保护数据的机密性和完整性,以遵守法规和安全标准。
总结而言,备份工程是确保数据安全、业务连续性和灵活性的关键步骤。无论是面临意外事件、需求变更还是灾难恢复,备份工程都是保护和恢复项目的可靠手段。
1.3 功能简介
本文主要介绍普通部署方式下的工程备份方案。
相比于普通部署方式,容器化部署的工程,可通过FineOps运维平台,一键、异机、完整备份工程。
运维平台备份还原功能优势请参考:最佳实践-备份还原
非容器化工程迁移容器化方案请参考:非容器化单机迁移容器化单机
2. 操作用户备份单张模板
应用场景:远程设计时,操作用户对某张模板进行编辑,应当备份模板历史版本。
2.1 备份方案
备份内容:工程中的任意模板的历史版本
备份频率:建议每60分钟每个用户同个模板保留一个版本
备份操作:设计器「文件>选项>常用」下,开启「版本管理」相关配置。
保存位置:工程%FR_HOME%\webapps\webroot\WEB-INF\assets\vcs目录下
2.2 还原方案
设计器中选中目标模板,点击「版本管理」,对指定版本进行「还原」即可。
3. 系统管理员备份关键配置
应用场景:定期自动对工程关键业务数据进行备份,防止工程出现意外,便于还原。
3.1 备份方案
备份内容:工程中的模板、插件、JAR包、平台配置
备份频率:建议每1周备份1次,保留最近5份备份
备份操作:管理员登录数据决策系统,点击「管理系统>智能运维>备份还原>全局设置」,开启自动备份。
保存位置:工程%FR_HOME%\webapps\webroot\backup目录下
3.2 还原方案
管理员登录数据决策系统,点击「管理系统>智能运维>备份还原」,依次对「平台配置、报表模板、jar包、插件」中同一时间的自动备份进行还原。
由于这四个项互相存在影响(比如插件和jar包配套、模板和平台目录配套、模板功能和jar包功能关联),因此一定要把同时生成的四者备份一起还原,不可只还原某一项,或还原不同时间节点的备份内容。
4. 服务器管理员备份工程
应用场景:迁移/升级前,手动对工程进行整体异机备份,便于迁移/升级失败后快速回退。
4.1 备份方案
1)准备备份内容存放的服务器
建议额外准备一个服务器,用于存放工程备份文件(若本机备份,服务器出现意外时无法确保备份文件的安全)
2)检查finedb配置库信息
管理员登录工程,点击「管理系统>系统管理>常规」,检查外接数据库是否已配置。
已配置:说明工程已配置外接数据库,点击「已配置」,记录下该工程的配置库位置信息。
未配置:说明工程未配置外接数据库,使用内置配置库。
3)关闭工程节点
请参考 关闭或重启FineReport工程 文档,关闭单机工程节点/集群每一个工程节点。
4)检查工程路径
一般来说,工程路径为%Tomcat_HOME%/webapps/webroot,但是为了配置短链,可能配置了外挂目录,工程路径就会发生变化。
检查方法:查看%Tomcat_HOME%/conf/server.xml文件,查看是否配置了docBase,若配置了,那么该路径即为工程外挂目录的路径
5)备份工程文件
请将上节确定的工程路径webroot文件夹,备份到第一节准备的服务器中。
若配置了集群文件服务器,请单独完整备份。
若服务器资源不足,webroot文件夹过大,请至少备份工程和文件服务器中以下文件:
单机工程文件 | 集群工程文件 | 说明 |
---|---|---|
/webroot/backup | %ftp%/backup | 工程历史备份文件 |
/webroot/logs | /webroot/logs | 工程历史操作日志(即logdb),提供「管理系统>平台日志」数据 |
/webroot/WEB-INF/assets | %ftp%/assets | 保存通用的共享持久化目录、FineReport模板备份文件、工程读写(图片)缓存 |
/webroot/WEB-INF/classes | /webroot/WEB-INF/classes | 工程调用的默认和自定义class文件 |
/webroot/WEB-INF/config | /webroot/WEB-INF/config | 平台调用的finedb配置库信息(finedb) |
/webroot/WEB-INF/embed | /webroot/WEB-INF/embed | 存放着工程曾经/现在使用的内置finedb数据库(即使现在使用着外接配置库,也建议拷贝,方便回退) |
/webroot/WEB-INF/lib | /webroot/WEB-INF/lib | 工程原有/定制/外部引入的JAR包,提供工程所有基础功能,是工程的关键文件 |
/webroot/WEB-INF/dpworks | /webroot/WEB-INF/dpworks | FineDataLink任务相关的配置文件(如不存在该文件夹,说明工程没有使用FDL相关功能,略过) |
/webroot/WEB-INF/plugins | %Tomcat_HOME%/webapps/webroot/WEB-INF/plugins | 插件相关文件 |
/webroot/WEB-INF/reportlets | %ftp%/reportlets | FineReport模板存放目录,如不拷贝会导致工程所有模板丢失 |
/webroot/WEB-INF/schedule | %ftp%/schedule | 定时调度生成的文件,如不拷贝,定时任务挂载到决策平台的结果报表无法访问 |
6)备份外接数据库
若第二节检查出工程已配置外接数据库,需要对该数据库进行单独备份:
自行使用第三方工具,将该数据库转储一份,并将备份文件上传至第一节准备的服务器中。
7)重启工程节点
至此,工程备份完成。可参考 关闭或重启FineReport工程 文档,重启单机工程节点/集群每一个工程节点,恢复正常运行。
4.2 还原方案
1)关闭工程节点
请参考 关闭或重启FineReport工程 文档,关闭单机工程节点/集群每一个工程节点。
2)恢复外接数据库
将备份的外接数据库,恢复到目标数据库中。
3)恢复工程文件
将备份的工程文件,拷贝到工程目录/外挂目录中。
注意:若为集群工程,需要拷贝到每个工程节点服务器中。
4)重启工程节点
参考 关闭或重启FineReport工程 文档,重启单机工程节点/集群每一个工程节点,恢复正常运行。