用阿里云做网站,google怎么做网站推广,wordpress中标签作用,青岛模板建站多少钱文章目录 概要技术测试分析测试1#xff1a;测试2#xff1a;测试3#xff1a;测试4#xff1a; 解决方案#xff1a;1、修改service2、修改pdb名称 总结 概要
应用端访问提示错误信息为#xff1a;VersionHelper异常!未将对象引用设置到对象的实例#xff01; 此问题… 文章目录 概要技术测试分析测试1测试2测试3测试4 解决方案1、修改service2、修改pdb名称 总结 概要
应用端访问提示错误信息为VersionHelper异常!未将对象引用设置到对象的实例 此问题原因有以下三种情况
1未初始化对象在使用对象之前没有对其进行初始化或者分配内存。
2对象已经被释放在使用对象之前对象已经被释放或者销毁。
3对象被赋予了null值在使用对象之前将对象赋值为null导致无法访问对象。
因应用登录正常那也就说明已连接数据库很有可能是对象被赋予了null值经过应用测试排查发现是在访问long字段中数据sql语句获取不到导致的。
技术测试分析
测试1
获取不到long字段中的值那么通过将long类型转换为clob类型获取则没问题那么这里我就开始怀疑兼容性问题了因为oracle客户端配置为了19c的客户端。
测试2
在服务端不做变更情况下使用11g客户端访问long字段没问题那么很明显是客户端产生的影响。
测试3
数据库服务器修改隐含参数_rowsets_enabled进行排除法实际我在alert中未发现600的报错所以此问题可能性较小实际测试与猜想一致修改无效。 alter system set “_rowsets_enabled”FALSE scopeboth sid‘*’;
测试4
因为数据库是19c多租户模式添加了一条service指向了pdb让应用测试将实例名换成pdb的实际名称测试居然通过了 现在就可以说真相浮出水面了
#之前的配置信息
#加了和高可用相关的追求现业务连续性时使用参数
srvctl add service -db db19c -pdb pdb1 -service cxldb -preferred db19c1,db19c2 -notification TRUE -commit_outcome TRUE -retention 86400 -drain_timeout 300 -stopoption IMMEDIATE -replay_init_time 600 -failover_restore AUTO -failovertype AUTOsrvctl start service -db db19c -service cxldb 解决方案
1、修改service
#删除原先配置
srvctl stop service -db db19c -service cxldb
srvctl remove service -db db19c -service cxldb
#新增service配置
srvctl add service -db db19c -pdb pdbl -service cxldb -preferred db19c1,db19c2
#启动service
srvctl start service -db db19c -service cxldb 应用测试成功
2、修改pdb名称 操作步骤 1、需要关闭其他节点 2、在一个节点启用受限模式在cdb下修改 3、然后关闭重启以后其他节点也生效了
总结