我有一个使用JavaFx和springboot构建的库存管理应用程序,它最初构建为使用hsqldb作为独立运行。现在,我想升级它,以便两个或多个系统可以在局域网环境中共享相同的数据库。当我通过wifi连接两个系统时,我可以从另一个连接的计算机上运行应用程序,但是在创建记录之后,它并没有反映到另一个系统上。请问我该怎么做?我需要使用mysql而不是hsqldb吗?下面是我的application.yml文件配置。散列的行是独立版本的前面设置,我已经重新定义了hsql设置以使用网络路径,如所示(\PC001\ims_compiled\shared_hsqldb\hsqldb)。
请提供任何帮助,不胜感激。
app:
fixedDelay: 300000
fixedRate: 1200000
localLogin: true
debug: true
hsql:
parameters: hsqldb.lock_file=false;createDatabaseIfNotExist=true;DB_CLOSE_DELAY=-1;shutdown=true;hsqldb.write_delay=false;hsqldb.write_delay_millis=100
log4j:
logger:
org:
hibernate:
transaction: ERROR
springframework:
transaction: ERROR
logging:
config: logback.xml
level:
com:
zaxxer:
hikari:
HikariConfig: ERROR
org:
hibernate:
SQL: ERROR
type:
descriptor:
sql:
BasicBinder: ERROR
mysql-base:
datasource:
DB: ikooba_db
host: 34.244.38.76
jdbc-url: jdbc:mysql://${mysql-base.datasource.host}:${mysql-base.datasource.port}/${mysql-base.datasource.DB}?${mysql-base.datasource.parameters}
parameters: serverTimezone=UTC&useSSL=FALSE&autoReconnect=true&sessionVariables=sql_mode=''
password: 'gsjgsgssshj'
port: 3306
username: sfgsdsfdfs
sentry:
dsn: https://shfs6765676757shsvvs@errors.xxxxxxxx.com/6
enabled: true
stacktrace:
app:
packages: com.ikooba.desktop.ims
spring:
datasource:
hikari:
auto-commit: true
# jdbcUrl: jdbc:hsqldb:hsqldb/userDB;${hsql.parameters}
jdbcUrl: jdbc:hsqldb:\\PC001\ims_compiled\shared_hsqldb\hsqldb/userDB;${hsql.parameters}
password: ''
username: sa
jpa:
hibernate:
ddl-auto: update
use-new-id-generator-mappings: true
properties:
hibernate:
enable_lazy_load_no_trans: true
jdbc:
batch_size: 120
order_inserts: true
search:
default:
directory_provider: filesystem
# indexBase: hsqldb/lucence/indexes
indexBase: \\PC001\ims_compiled\shared_hsqldb\hsqldb/lucence/indexes
indexwriter:
infostream: true
generate_statistics: true
jmx_enabled: true
lucene_version: LATEST
javax:
persistence:
validation:
mode: none
main:
allow-bean-definition-overriding: true
lazy-initialization: true发布于 2022-03-22 18:31:57
在PC001上安装一个HSQLDB服务器,并从不同的机器连接到它。
第15章. http://hsqldb.org/doc/2.0/guide/listeners-chapt.html#lsc_hsql_server
为了简单起见,按照描述创建一个server.properties file。在此文件中,下面的属性设置应反映数据库的名称、路径和启动属性。例如:
server.database.0=file:\\PC001\ims_compiled\shared_hsqldb\hsqldb/userDB;hsqldb.write_delay_millis=100您在hsql.parameters中使用的其他参数是不必要的(例如,hsqldb.lock_file、关机)。有关有效属性,请参见http://hsqldb.org/doc/2.0/guide/dbproperties-chapt.html (但您可能不需要它们)。
https://stackoverflow.com/questions/71566945
复制相似问题