如何从命令行停止 HSQLDB

Posted

技术标签:

【中文标题】如何从命令行停止 HSQLDB【英文标题】:How to stop HSQLDB from command line 【发布时间】:2014-01-13 16:41:46 【问题描述】:

以下是我在运行 junit 测试之前用来启动 HSQL 数据库的语法。 java -cp ./hsqldb.jar org.hsqldb.server.Server --database.0 文件:mydb --dbname.0 xdb

从命令行停止这个数据库的语法是什么?

Thank you. I made progress but now get this error.

I get this error when attempting to shutdown.

Failed to get a connection to 'jdbc:hsqldb:file:C:\My Projects\Libraries\junit\m
ydb;shutdown=true' as user "SA".
Cause: Database lock acquisition failure: lockFile: org.hsqldb.persist.LockFile@
74715985[file =C:\My Projects\Libraries\junit\mydb.lck, exists=true, locked=fals
e, valid=false, ] method: checkHeartbeat read: 2014-01-31 19:06:52 heartbeat - r
ead: -9919 ms. 

My START command.
java -cp ./hsqldb.jar org.hsqldb.server.Server --database.0 file:mydb --dbname.0 xdb

My sqltool.rc
# A personal, local, persistent database 
urlid xdb
url jdbc:hsqldb:file:C:\My Projects\Libraries\junit\mydb;shutdown=true
username SA
password

My STOP command.
java -jar sqltool.jar --sql 'SHUTDOWN;' xdb

【问题讨论】:

【参考方案1】:

我解决了这个问题,需要在我的 sqltool.rc 文件中使用 localhost。

我的 START 命令:

java -cp ./hsqldb.jar org.hsqldb.server.Server --database.0 file:mydb --dbname.0 xdb

我的 sqltool.rc:

urlid xdb
url jdbc:hsqldb:hsql://localhost/xdb;shutdown=true
username SA
password

我的 STOP 命令:

java -jar sqltool.jar --sql "SHUTDOWN;" xdb

【讨论】:

【参考方案2】:

您可以使用 SQLTool,它是一个命令行实用程序,作为 HSQLDB 的 jar 提供。有一个适用于 Unix 的示例,但您可以在其他操作系统中使用类似的命令。

http://hsqldb.org/doc/guide/unix-chapt.html#uxc_shutdown

有关详细信息,另请参阅实用程序指南:

http://www.hsqldb.org/doc/2.0/util-guide/index.html

【讨论】:

以上是关于如何从命令行停止 HSQLDB的主要内容,如果未能解决你的问题,请参考以下文章

升级后 HSQLDB 命令行关闭不再起作用

从命令行停止 Abaqus 中正在运行的 Python 脚本

如何在HMC的命令行模式启动和停止LPAR

从命令行停止Windows Update重新启动

Android 从命令行停止模拟器

如何通过命令行停止appium服务器?