本文讨论了EAS Cloud系统附件管理的问题及解决方案,指出上线初期忽视附件管理导致的问题,如数据库庞大、安全隐患等。提出了四种附件存储方案,并推荐FTP文件服务器为优选方案。同时,详细阐述了附件管理的注意事项,包括设置存储方式、上传控制、权限管理等,并提供了附件迁移过程中的具体步骤和注意事项,包括FTP服务器配置、迁移前准备、迁移过程问题及解决方案等,旨在帮助用户优化EAS Cloud的附件管理与迁移工作。
1 业务背景
在EAS Cloud前期调研和上线实施过程中,很多实施顾问和企业人员未关心到附件的管理,导致系统上线一段时间后,发现因为附件存储和设置的问题,引发其他问题。
例如:
附件存储于数据库或者附件重复上传,导致数据库庞大,影响使用;
附件未做类型控制,上传上的附件不能查看;
附件上传了一些脚本等文件,带来安全隐患等;
笔者在这里就使用期间遇到的问题,整理了一份EAS Cloud产品附件管理与迁移的使用技巧,供大家参考。
2 关键步骤
2.1 建立附件整体管控方案
结合使用给出以下几种技术方案:
方案一:附件存储于数据库服务器,对附件进行白名单控制,同时控制人员的附件管理权限;
方案二:附件存储与EAS应用服务器,对附件进行白名单控制,同时控制人员的附件管理权限;
方案三:附件存储于FTP文件服务器,对附件进行白名单控制,同时控制人员的附件管理权限;
方案四:附件存储与华为云OBS数据桶(OBSBrowserPlus),附件白名单控制,同时控制人员附件管理权限。
上面的四种技术方案,除第四种在EASV85环境中暂时未能回迁之外,其他三种方案均测试使用过。综合比较,优选方案三。如果能回迁,肯定使用第四种方案。
各种方案优缺点对比:
方案一 | 方案二 | 方案三 | 方案四 | |
优点 | 适用于附件较少的公司使用, | 不影响数据库性能 | 相对独立 | 个人认为最佳 云端存储,不受服务器环境、网络等限制; 容量可调,费用较低。500GB的一年费用600Y,100GB 一年费用120Y。 |
缺点 | 数据量大,拖垮/拖慢数据库。 我们数据库80G,附件占用35G。 | 安全问题 由于二开等场景多,不同的人登录应用服务器,附件安全性要考虑 | 需要专门的技术人员搭建服务器和进行维护 | 云端存储,领导能否接受 |
2.2、附件管理的注意事项(administrator登录设置)
2.2.1附件管理控制参数
参数编码:ATTACHMENTSTORAGE
参数名称:附件存储方式
参数值:FTP/EASSERVER/FTP
2.2.2附件上传设置
附件上传设置是在下图位置进入。
一定要设置一下白名单或者黑名单,要不员工什么类型文件都上传上来了。修改了文件后缀的,上传快捷方式的。bat,exe等文件 还得进行安全性考虑。系统黑白名单设置范围有限,还是直接设置白名单比较稳妥。附件大小也做下限制。
2.2.3附件权限管控
员工可以自己管理自己的附件,可以设置一个员工的通用角色,让员工能够自己查看和设置自己的附件的可见范围,最好自己能设置附件共享范围,这样的话方便员工自己操作,减少附件占用存储的空间。
设置方法:进入到附件管理,选择附件 然后设置全局共享 还是按单据类型进行共享。
例如:A员工做付款单,上传了一个合同;后面还有继续付这个合同的款项,就可以直接选择添加这个合同,而不需要再重新上传合同。
此外,对于管理者,还可以设置查看所有附件的权限,这个是要administrator登录到附件管理中 通过“查看所有人附件用户设置”进去设置。
2.3 附件迁移过程中遇到问题的处理方式
2.3.1 ftp 服务器配置
需要学会配置FTP,我这边不会配置,直接找外面的人进行了配置,配置结束之后记得修改下密码。
ftp配置的过程中,添加ftp配置,在配置窗口的这个测试连接 按钮有点忽悠人了,点了之后提示失败,其实是成功的。
退出之后再序时簿列表界面 你去点测试连接,他又是连接成功的。
注意点:FTP配置成功与否 与 CMD能否执行PUT命令无关。
实际使用发现:只要设置好了ftp服务器,修改了公共参数能够进行存储,就是能进行附件迁移的。
2.3.2 FTP迁移
迁移前的准备事项:
①FTP服务器环境
②EAS FTP连接配置
③检查处理附件表中是否存在脏数据
(没有关联关系的附件)
--没有关联单据的附件 脏数据 SELECT t2.FASSOBUSOBJTYPE,t2.FBOID ,t1.* FROM T_BAS_ATTACHMENT t1 left join t_bas_boattchasso t2 on t1.fid = t2.FATTACHMENTID where FREMOTEPATH LIKE '%null%' and t2.FASSOBUSOBJTYPE is null --删除脏数据 DELETE FROM T_BAS_ATTACHMENT WHERE fid in('Y/AAAADWuJz0r08D','Y/AAAADCFgj0r08D','Y/AAAADid2T0r08D')
④检查用户监控中的闲置踢出时间
迁移过程中不能中断,中断可能会丢数据!! FTP迁移过程中,如果中间中断,可能会出现下图报错
这个错误是系统的bug,不知道什么时间解决。迁移过程出现这个,你就在启用一下EAS serer服务器存储,点了迁移立马取消,然后又可以继续FTP迁移了。然后再把EAS服务器中的附件转移到FTP中去。
迁移过程系统尝试重连之后,你会发现连“FTP附件配置”这个选项都没有了。必须要重新登录才能再次出现。
⑤恢复备份账套,测试迁移
比对下一导出文件的数量和大小。实测:部分重复附件是不能迁移的。
迁移过程中出现这个界面,等待十分钟,无反应就再登录个账号看下附件情况,如果再次点迁移就是代表已经迁移成功了,可以直接关闭窗口。
转移过程中,如果出现下图则等待迁移。
⑥下班无人操作时,正式系统迁移
2.3.3 EAS服务器文件迁移至FTP服务器
①直接从EAS服务器拷贝文件至FTP服务器,在根目录直接粘贴;
②修改数据表内容
主要更改一下几个字段:
-- eas服务器 文件迁移至 FTP服务器 --查询结果 SELECT * FROM T_BAS_ATTACHMENT WHERE FSTORAGETYPE =2 --结果备份 SELECT * into easfiles_20221128 from T_BAS_ATTACHMENT WHERE FSTORAGETYPE =2 SELECT * FROM easfiles_20221128 SELECT * FROM t_bas_boattchasso where FATTACHMENTID in(SELECT fid FROM easfiles_20221128) 数据验证 OK!! --执行方言 --UPDATE T_BAS_ATTACHMENT SET FREMOTEPATH = ('\EAS' || substr(FREMOTEPATH,12)) , FSTORAGETYPE =1,FFTPID='Y/AAAAFI6GkpLLlk' WHERE FSTORAGETYPE =2
3 适用版本
3.1 以上适用于EASV8.5版本
3.2 参考文件及附件
附件清单 ↓↓↓↓
eas服务器 文件迁移至 FTP服务器.txt
EAS附件迁移操作手册.doc
附件存储服务器变更操作说明.docx
获取文件夹 目录.bat
附件迁移.rar(594.06KB)