如何从命令行停止 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的主要内容,如果未能解决你的问题,请参考以下文章