如何连接到独立的 HSQLDB

Posted

技术标签:

【中文标题】如何连接到独立的 HSQLDB【英文标题】:How to connect to standalone HSQLDB 【发布时间】:2018-01-10 11:38:48 【问题描述】:

我在连接旧项目 HSQLDB 时遇到问题(需要将其迁移到 mysql)。数据库是独立的,基于文件的。我正在使用 hsqldb-2.4.0 进行连接。 尝试按照所有说明和此论坛提示无济于事。获取授权错误 java.sql.SQLInvalidAuthorizationSpecException: 无效的授权规范

这就是我的工作

1) 启动服务

java -cp ../lib/hsqldb.jar org.hsqldb.Server -database.0 file:db.hsqldb -dbname.0 xdb

--> 似乎启动正确

2) 尝试连接

java -cp hsqldb.jar org.hsqldb.util.DatabaseManagerSwing --driver org.hsqldb.jdbcDriver --URL jdbc:hsqldb:hsql://localhost/xdb --user "SA"

--> 无效授权

我对脚本的理解是使用了默认的用户名/密码(SA/无密码):

CREATE USER SA PASSWORD DIGEST '67a2fc38c682b3d55125dbc9d0bd26a3'

(不知道如何检查)

非常感谢任何帮助/想法。

【问题讨论】:

尝试传递空白密码,如--password "" 正如@fredt 提到的,我必须将 DIGEST 更改为空白密码摘要才能使其正常工作。更改后,连接成功。 【参考方案1】:

DIGEST 不是默认的空字符串密码。在启动服务器之前,编辑 .script 文件并将摘要更改为“d41d8cd98f00b204e9800998ecf8427e”,这是空字符串密码的摘要。

【讨论】:

以上是关于如何连接到独立的 HSQLDB的主要内容,如果未能解决你的问题,请参考以下文章

如何设置连接 URL 以连接到 HSQLDB 中的多个数据库

将数据库连接到 HSQLDB 服务器

不要连接到 HSQLDB 数据库

HSQLDB EJB3.0 Hibernate 无法连接到数据库

连接到 IDE 中现有的 hsqldb 实例

通过 Windows ODBC PostgreSQL 驱动程序连接到 HSQLDB 2.5