某天继续在金蝶AAS 应用服务器+人大金仓环境下部署应用时,发现原本可以部署的项目 没有做任何变动,突然就提示:部署失败了。但是问题很诡异,在开始的时候我并没有看到任何的报错信息,然后突发奇想重启了电脑之后,再启动发现AAS的控制台有报错信息如下:
Caused by: com.kingbase8.util.KSQLException: Connection to 127.0.0.1:54321 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.
at com.kingbase8.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:291)
at com.kingbase8.core.ConnectionFactory.openConnection(ConnectionFactory.java:49)
at com.kingbase8.jdbc.KbConnection.<init>(KbConnection.java:229)
at com.kingbase8.jdbc.KbConnection.<init>(KbConnection.java:199)
at com.kingbase8.Driver.makeConnection(Driver.java:486)
at com.kingbase8.Driver.connect(Driver.java:288)
at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138)
at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364)
at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206)
at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476)
at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561)
at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115)
at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112)
at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:180)
at org.hibernate.resource.transaction.backend.jta.internal.DdlTransactionIsolatorJtaImpl.<init>(DdlTransactionIsolatorJtaImpl.java:59)
… 162 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.TwoStacksPlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:476)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:218)
看到报错原因 就容易找了。
经过使用金仓数据库的对象管理工具,连接该数据库服务发现有如下报错信息:
经过在网上查找资料:
数据库人大金仓windows服务启动不了解决方案之一_曉儂的博客-CSDN博客_人大金仓服务启动
说是服务启动的问题,于是我就跟着在 计算机管理—服务管理里 找到了 我所安装的KingbaseES的服务:
启动类型为自动,但是当我手动启动时则提示:
于是手动启动服务的方式就行不通了,想着以命令方式启动。
金仓数据库服务命令启动为 安装目录下 Kingbase/ES/V8/Server/bin下的 sys_ctl.exe -D “数据路径” start
此时就发现了问题:
启动时出现了致命错误:License file expired. sys_ctl:could not start server。
由于我使用的是测试的授权文件,有效期只有90天,所以验证授权的情况下,自然就不能启动服务了。
替换金仓的授权文件然后再启动应该就OK了。 金仓授权文件下载地址(藏的比较深,我开始都没找到):
人大金仓-成为世界卓越的数据库产品与服务提供商
手动操作路径是:首页—【产品与方案】—【通用型数据库】—【下载使用】—【授权文件】
根据需要 下载需要的版本,将授权文件 替换到V8目录下:
再次通过命令启动 :
此时发现金仓数据库启动成功了。
再次在金蝶AAS里部署此应用,发现问题解决。