java - HSQLDB 别名不存在,linux sh 脚本

标签 java linux hsqldb raspberry-pi

问题是当我的 hsql 服务器启动时,它告诉别名存在,一切都连接成功:

rpi@RaspberryPi:/home/snb/update_skynetwork/apps/App/bin$ sh skysql.sh
/home/snb/update_skynetwork/apps/App/lib/hsqldb-2.2.8.jar
[Server@133796]: [Thread[main,5,main]]: checkRunning(false) entered
[Server@133796]: [Thread[main,5,main]]: checkRunning(false) exited
[Server@133796]: Startup sequence initiated from main() method
[Server@133796]: Could not load properties from file
[Server@133796]: Using cli/default properties only
[Server@133796]: Initiating startup sequence...
[Server@133796]: Server socket opened successfully in 7 ms.
] opened sucessfully in 1462 ms.=0, id=0,   db=file:/home/snb/update_skynetwork/apps/App/sky-network-hsqldb/sky-network-hsqldb,       alias=sky-network-hsqldb
[Server@133796]: Startup sequence completed in 1473 ms.
[Server@133796]: 2012-12-20 10:23:11.843 HSQLDB server 2.2.8 is online on port 9001  
[Server@133796]: To close normally, connect and execute SHUTDOWN SQL
[Server@133796]: From command line, use [Ctrl]+[C] to abort abruptly

但是当我尝试连接我的 java 应用程序时,我收到此错误:

-在服务器上:

[Server@133796]: [Thread[HSQLDB Connection @bdb503,5,HSQLDB Connections @133796]]: database alias=sky-network-hsqldb does not exist
[Server@133796]: [Thread[HSQLDB Connection @110003,5,HSQLDB Connections @133796]]: database alias=sky-network-hsqldb does not exist
[Server@133796]: [Thread[HSQLDB Connection @175d6ab,5,HSQLDB Connections @133796]]: database alias=sky-network-hsqldb does not exist

-在客户端:

Caused by: org.hsqldb.HsqlException: General error: database alias does not exist
at org.hsqldb.error.Error.error(Unknown Source)
at org.hsqldb.ClientConnection.<init>(Unknown Source)
... 16 more

我已尝试使用 sqltool 测试连接,但还是一样。 另外,我已经检查了客户端属性中的别名 - 都是一样的,就像需要的一样。 hsql的jar都是一样的。一切都匹配。

作为操作系统,我有一个 Raspberry-pi VM。

编辑

这是我的 sqltool.sh :

#! /bin/sh -e

export CLASSPATH=../lib/hsqldb-2.2.8.jar:$CLASSPATH
export CLASSPATH=../lib/sqltool.jar:$CLASSPATH

java -classpath $CLASSPATH org.hsqldb.cmdline.SqlTool --    inlineRc=url=jdbc:hsqldb:hsql://localhost/sky-network-hsqldb,user=SA,password=

最佳答案

似乎唯一可能的问题是 shell 脚本。

你能为别名使用一个没有连字符的简单名称吗?

数据库文件名应该可以带连字符。

服务器消息指出您没有 server.properties 文件。在这种情况下,数据库文件路径和名称/别名应该在命令行上。请检查您的 shell 脚本并报告/更改启动服务器的行。

关于java - HSQLDB 别名不存在,linux sh 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13970119/

相关文章:

hsqldb - 使用hsqldb时缓存的表不是缓存而是在内存中

java - 使用 Comparator 类时,Android Studio Gradle 不会构建我的应用程序?

java - 客户端未从服务器接收消息 - 在服务器上使用 select() 调用

java - servlet中每个servlet实例和servlet每个线程的区别?

php - 通过 PHP 哈希 MD5 显示与通过 Unix 终端不同的结果

linux - 识别哪个 Linux 系统库包含一个函数

php - VirtualHost 模块在交付给客户之前搜索和替换 HTML 网站代码

java - 泛型映射键应该只允许两个类并且值一个类

java - 从数据库中搜索java servlet

postgresql - 删除非空约束