0

我像这样启动一个 hsqldb 1.8 服务器:

java -cp "%classpath%;.;Y:\PlantOperations\bldPlantOperations\code\lib\jboss\hsqldb-1.8.0-10.jar;C:\Documents and Settings\BThirup\Application Data\Rockwell Automation\FactoryTalk ProductionCentre \ProcessDesigner\hsqldb-1.8.0-10.jar;C:\Documents and Settings\BThirup\Application Data\Rockwell Automation\FactoryTalk ProductionCentre\ShopOperation\hsqldb-1.8.0-10.jar;" org.hsqldb.Server -database.0 文件:“C:\Documents and Settings\BThirup\Application Data\Rockwell Automation\FactoryTalk ProductionCentre\logs\ApplicationLog\mydb”-dbname.0 xdb

我有多个使用 jdbc:hsqldb:hsql://localhost/xdb;shutdown=true 连接的客户端(无特定顺序)

当没有更多客户端连接时,我想关闭 Hsqldb 服务器。

我在文档中读到,在 jdbc url 中添加 shutdown=true 会导致 hsqldb 在没有更多客户端连接后关闭。但我没有看到这种情况发生。

我也试过

Properties info = new Properties();
            info.put("user", "SA");
            info.put("password", "");
            info.put("shutdown", "true");
conn = DriverManager.getConnection(dbString, info);

以上也不会导致 hsqldb 服务器在最后一个客户端断开连接后关闭。

对此的任何帮助表示赞赏

巴拉

4

1 回答 1

0

shutdown=true属性适用于进程内连接,而不是通过服务器连接。

如果您在服务器启动时将此属性添加到数据库 URL,它可能会起作用。这将导致数据库关闭,进而导致服务器关闭。

java -cp ... org.hsqldb.Server -database.0 文件:“C:\Documents and Settings\BThirup\Application Data\Rockwell Automation\FactoryTalk ProductionCentre\logs\ApplicationLog\mydb;shutdown=true”-dbname.0数据库

与此无关,您只需要在类路径中引用一次 hsqldb-1.8.0-10.jar。

于 2012-04-24T18:06:56.777 回答