null/1520feccb5c098f389d076af1ac1e06b7db6f93268d [90020-140] 90020/90020 (Help)
研究发现如果采用file方式访问h2数据库,不能进行多连接访问,在运行tomcat时,该数据库就会被锁。但由于商用软件没有源代码,所以无法修改数据库连接方式。只是在商用软件的tomcat的conf\Catalina\localhost路径下找到数据库路径的相关xml配置:
<Context docBase="D:/sqsm_app/WebApp_offline" path="xpos" reloadable="True"/>
从这里可以看出是已文件地址进行访问的,所以会自动带锁
但改为<Context docBase="tcp://localhost/D:/sqsm_app/WebApp_offline" path="xpos" reloadable="True"/>
商用软件会运行不起来,所以这种方式修改肯定不对。
我开发的小工具为避免数据库被锁的问题,采用的是h2:tcp连接方式,测试后可以在商用软件未启动的情况下实现多连接对数据库进行操作。但在实际的业务中又不能将商业软件的tomcat服务关闭。
由于公司保密协议,我不能将我的代码发布上来,且本人可以确认自己开发的小工具不存在代码上的问题。目前就想在h2数据库能否进行混合模式访问,在file方式访问方式下,同时支持tcp访问方式。或者还有什么更好的解决办法。
非常感谢!