0
我有一个包含嵌入式HSQLDB数据库的进程。该数据库启动时的缓存设置:直接访问嵌入式缓存的HSQLDB服务器?
db = new Server();
db.setNoSystemExit(true);
db.setDaemon(true);
db.setDatabaseName(0, "store");
// default to cached or this will turn into an in-memory db by default
db.setDatabasePath(0, "file:" + new File(dataDirectory + "/store/db").getAbsolutePath()
+ ";hsqldb.default_table_type=cached;hsqldb.result_max_memory_rows=" + maxMemoryRows + ";hsqldb.cache_file_scale=" + cacheFileScale);
db.setPort(DefaultEndpoints.getPort(baseport, Ports.STORE_DB_OFFSET));
db.start(); //
我通过正常的JDBC连接字符串连接到该数据库没有问题:
final String connStr = "jdbc:hsqldb:hsql://" + host + ":" + port + "/" + DB_NAME;
这工作得很好。但是我有一系列的查询,我在与服务器相同的过程中发起。有没有办法直接连接到服务器,而没有通过Socket
?我想知道是否可以通过这种方式实现一些性能增益。
我也可以验证这一点也适用多个线程访问数据库,并在MVCC模式。 –