架构部值班问题及处理
2021-05-17 11:47:50 1 举报
AI智能生成
架构部问题总结
作者其他创作
大纲/内容
升级和补丁专题
升级kb后出现的问题
(1)升级后重启一直卡在jsp页面,如上图,并且stderr日志一直打印VirtualMechineClassNotFound,这个就是明显的jdk问题,更换jdk就可以了
(2)覆盖kb后,在界面上,出现了webapp''一直刷,大概率是jar冲突,我遇到的是http-core冲突,低版本里的是http-core-4.3.2.jar ,高版本是http-core4.4.1.jar,删除低版本的就可以,这些一般在stdout和stderr.log可以发现
其他专题
(1)redis部署后,oa无法退出的情况,无redis,则正常退出
解决:weaver_new_session.properties中添加enableImmediatelySync=true即可,参数是session实时同步到redis
解决:weaver_new_session.properties中添加enableImmediatelySync=true即可,参数是session实时同步到redis
Nginx集群专题
超时问题
案例(一):客户编写二开的代码,通过nginx请求出现超时后报错404,不走nginx转发的前提jsp访问正常;需要设置下nginx超时配置,在nginx/conf/nginx.conf下,将关于该jsp的请求所在拦截路径location体内,加上超时设置配置proxy_connect_timeout设置个60,或者120,记得重启下nginx (进入sbin下,./nginx -s reload即可)
Ecology专题
Ecology9宕机问题
1. start.bat或者resinstart.bat服务启动了,显示无报错,访问oa主页404(不分操作系统)
解决方案(一):检查resin.xml中的web-app这个root-directory参数是不是指向正确的ecology目录,如果不是,手动配置下即可,然后重启;检查javac这个标签,看看javac的路径是否指向正确,否则配置正确的javac路径
2. start.bat或者resinstart.bat服务启动了,显示报错web.xml等拦截器出现报错找不到class之类的信息
解决方案(一):检查下报错的class是否存在,如果不存在,需要添加需要的class;如果存在,尝试屏蔽web.xml报错的拦截器,重启后出现了新的拦截器报错,则大概率不是web.xml问题,需要替换下一个新的app-default.xml(Resin\conf下)或者查看上图是否配置正确,目前此方案可行
3. oa启动后,总是报错端口被占用,实际上端口没有被占用;排除一:如果有云桥服务,先关闭运云桥服务(具体原因不清楚为什么要关闭云桥),重启试试;排除二:看看resin.properties中除了app.http是oa的启动端口之外,还有没有其他端口这此端口相同,如果有,记得修改;
Ecology8宕机问题
1. oa无法启动,报错resin-web.xml中的<file-store>标签无法找到,解决一:停止oa服务,删除WEB-INF下的sessions目录,然后重启,如果一不行,尝试二:直接注释file-store标签,然后重启,文件夹删不删除没关系;
磁盘问题:很多宕机已经访问非常缓慢的情况,首先检查磁盘是否健康,linux看下用户磁盘目录使用情况,满的话,会导致宕机等其他问题
公共宕机问题汇总(不分8和9):
(一)、80端口被System占用:
1. netstat -ano | findstr ":80" 查看占用名称是不是System
2. 如果1成立,有两种方法,这个情况多数出现在sqlserver和oa在一台服务器上的情况,而导致这个原因在服务中,有个sqlserver Report这个服务名,改成手动启动,并直接关掉,不然开机后还是会继续占用80
如果关闭后发现80还是被占用,则要修改注册表,cmd输入 regedit 打开注册表,找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP,找到项Start,将其值改为0,然后重启系统就可以
1. netstat -ano | findstr ":80" 查看占用名称是不是System
2. 如果1成立,有两种方法,这个情况多数出现在sqlserver和oa在一台服务器上的情况,而导致这个原因在服务中,有个sqlserver Report这个服务名,改成手动启动,并直接关掉,不然开机后还是会继续占用80
如果关闭后发现80还是被占用,则要修改注册表,cmd输入 regedit 打开注册表,找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP,找到项Start,将其值改为0,然后重启系统就可以
云桥专题
云桥检测无法连接oa:云桥是单独部署,但是oa中有云桥的jsp,resin/log下的stdout报错jsp无法编译,需要把resin.conf的javac编译路径全部替换为internal,即可
云桥基本日志查看和启动:
tomcat/webapps/ROOT/log/weixin.log
Linux:
tomcat/logs/catalina.out
Windows:
tomcat/logs/ebridge_tomcat-stdout.log
tomcat/logs/ebridge_tomcat-stderr.log
tomcat/webapps/ROOT/log/weixin.log
Linux:
tomcat/logs/catalina.out
Windows:
tomcat/logs/ebridge_tomcat-stdout.log
tomcat/logs/ebridge_tomcat-stderr.log
云桥基本介绍和常识(后面更新):
1. 云桥实际上就是集成的,集成pc端的ecology页面到不同的app上面
2. 而em7指的是emobile7,也就是手机端的emobile7 app,里面集成的页面,都是来自oa的,需要借助云桥实现,对应关系,E9对应em7服务,如果想集成一些页面进到企业微信或者钉钉上,也需要借助云桥实现,而云桥功能就放到em7服务里
3. em6指的是emobile6,也就是手机端embile6 app 正常情况下e8对应的是em6的服务,em6有自己的服务,不需要使用云桥,但是我想集成到企业微信或者钉钉,就需要借助云桥
1. 云桥实际上就是集成的,集成pc端的ecology页面到不同的app上面
2. 而em7指的是emobile7,也就是手机端的emobile7 app,里面集成的页面,都是来自oa的,需要借助云桥实现,对应关系,E9对应em7服务,如果想集成一些页面进到企业微信或者钉钉上,也需要借助云桥实现,而云桥功能就放到em7服务里
3. em6指的是emobile6,也就是手机端embile6 app 正常情况下e8对应的是em6的服务,em6有自己的服务,不需要使用云桥,但是我想集成到企业微信或者钉钉,就需要借助云桥
EM6专题
基本操作和具体日志目录:
(1)日志EMobile\webapps\ROOT\WEB-INF\logs\mobile.log
(1)日志EMobile\webapps\ROOT\WEB-INF\logs\mobile.log
数据库专题
Oracle专题
(一)oracle数据库基本检查:进入数据库服务器,切换身份su - oracle;lsnrctl status 看看数据库监听是否开启,如果没有开启监听,需要开启监听,lsnrctl start,开启成功后,sqlplus 回车,输入weaver.properties中的oracle账号密码看看是否正确,如果正确,基本确定OA和oracle这边的连接无异常
(二)oracle报错share memory does not exist:这样的情况很大概率是可以解决的:先sqlplus /nolog 进入后,conn / as sysdba,然后再startup后即可,再重复(一)检查下
(三)oracle突然变成多用户模式,需修改成单用户(注意数据库是ecology):
alter database ecology set emergency
alter database ecology set single_user
dbcc checkdb('ecology','repair_allow_data_loss')
alter database ecology set multi_user
alter database ecology set emergency
alter database ecology set single_user
dbcc checkdb('ecology','repair_allow_data_loss')
alter database ecology set multi_user
(四)oralce数据库密码过期。需要改成永久
1. 查看用户的proifle是哪个;SELECT username,PROFILE FROM dba_users;后找到你的用户名的密码策略,一般是default
2. SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';查看对应的概要文件(如default)的密码有效期设置(一般默认为180天)
3. ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;将概要文件(如default)的密码有效期由默认的180天修改成“无限制”
4. 修改之后不需要重启动数据库,会立即生效,重启oa就可以
1. 查看用户的proifle是哪个;SELECT username,PROFILE FROM dba_users;后找到你的用户名的密码策略,一般是default
2. SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';查看对应的概要文件(如default)的密码有效期设置(一般默认为180天)
3. ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;将概要文件(如default)的密码有效期由默认的180天修改成“无限制”
4. 修改之后不需要重启动数据库,会立即生效,重启oa就可以
(五)用户账户被锁定:update HrmResourceManager set passwordlock='0',sumpasswordwrong='0' where id ='人员id'; (适用不同的数据库)
(六)数据库的sga和pga(PGA(程序缓存区)与SGA(系统全局区)类似)不够,设置的时候,合计总内存不超过 物理内存的70%,一般pga分到8g就差不多了;(拿数据库服务器内存16G举例)
1、show parameter sga;查看SGA信息
2、show parameter pga;查看PGA信息
3、alter system set sga_target=6144M;
4、alter system set pga_aggregate_target=2048M scope=both sid='*';
1、show parameter sga;查看SGA信息
2、show parameter pga;查看PGA信息
3、alter system set sga_target=6144M;
4、alter system set pga_aggregate_target=2048M scope=both sid='*';
Sqlserver专题
oa启动后报错getColumn,很有可能几个原因:
(一)、数据库做了迁移,数据库的版本从08升到12,但是jdk的版本还是在1.6,这样会不支持,需要降低sqlserver版本或者升级jdk到8;
(二)、账号密码连不上,常规操作看看weaver.properties的数据库连接信息是否正确包括账号密码,试着用工具连接下,然后服务器测试数据库ping能不能通,或者telnet远程1433端口是否可以通;然后重启oa;
(一)、数据库做了迁移,数据库的版本从08升到12,但是jdk的版本还是在1.6,这样会不支持,需要降低sqlserver版本或者升级jdk到8;
(二)、账号密码连不上,常规操作看看weaver.properties的数据库连接信息是否正确包括账号密码,试着用工具连接下,然后服务器测试数据库ping能不能通,或者telnet远程1433端口是否可以通;然后重启oa;
mysql专题
EM7专题
基本操作和具体日志目录:
(1)em7是emp/work/logs/applog/emobile.log
(1)em7是emp/work/logs/applog/emobile.log
0 条评论
下一页