Play生产模式如何存储H2数据库文件?
How to store H2 database file in Play production mode?
我正在使用带有 H2 文件数据库的 Play 2.3。我使用 application.conf 和
的默认配置
db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:file:data/db"
当我运行在开发模式下玩时,数据库保存在data/db.h2.db
。但是,当我 运行 在生产模式下播放(从同一文件夹)时,它不会写入 data/
文件夹,而只会写入 target/universal/stage/data/
。这是一个生成的文件夹,但很容易被覆盖。此外,在 activator clean
上,它只是删除目标文件夹中的所有内容以及数据库。
这真的是正确的行为吗?如何将数据库存储在更安全的地方?
在文件系统上使用绝对路径而不是相对路径,即:
jdbc:h2:/data/db
在cheatsheet and/or preview of databse URLs
中查看另一种可能性
我正在使用带有 H2 文件数据库的 Play 2.3。我使用 application.conf 和
的默认配置db.default.driver=org.h2.Driver
db.default.url="jdbc:h2:file:data/db"
当我运行在开发模式下玩时,数据库保存在data/db.h2.db
。但是,当我 运行 在生产模式下播放(从同一文件夹)时,它不会写入 data/
文件夹,而只会写入 target/universal/stage/data/
。这是一个生成的文件夹,但很容易被覆盖。此外,在 activator clean
上,它只是删除目标文件夹中的所有内容以及数据库。
这真的是正确的行为吗?如何将数据库存储在更安全的地方?
在文件系统上使用绝对路径而不是相对路径,即:
jdbc:h2:/data/db
在cheatsheet and/or preview of databse URLs
中查看另一种可能性