我是jhipster的新手,在开始时我被要求在
之间做出选择H2,基于磁盘的持久性
具有内存持久性的H2
的MySQL
数据库之间有什么区别。
谢谢
答案 0 :(得分:3)
您需要根据需要选择数据库。
JHipster的默认值是:
free SQL database written in Java
。当您启动/运行您的应用程序时,数据库将是保存在项目根目录target
目录下的文件。src/main/docker/mysql.yml
下启动数据库。关于部署到Heroku的评论,你有H2磁盘&内存基础,Postgres Addon Heroku免费。在Matt Raible的Postgres的免费书The JHipster Mini-Book 2.0中,有一个很好的JHipster应用程序部署到heroku的例子。
编辑: JHipster在生产和开发(MySQL,PostGreSQL,Microsoft SQL Server ......)中支持大多数关系数据库。只需相应地修改 application-dev.yml 或 application-prod.yml 即可。 我不建议在生产中使用h2,甚至基于磁盘的版本。如果我们考虑到您的Heroku部署需求,PostGreSQL是一个很好的选择,具有大型社区和足够的功能,适用于普通应用。
答案 1 :(得分:2)
我们目前默认使用 H2 in-memory 持久性。这很容易 使用,但当然在每次重启时都会丢失数据(并且需要记录 在你失去持久会话令牌时再次出现,这是 烦。
默认情况下我们可以使用 H2基于磁盘的持久性,并保存 目标/目录中的数据库状态: