java - 托管 H2 数据库并接受连接

标签 java h2

我已经为此寻找了很长一段时间,所以我只想在这里问一下;

如何在服务器模式下设置 H2 数据库,以便我可以从另一台计算机通过互联网连接到它?如何在服务器模式下启动引擎并使其在计算机上运行以接受连接?我可以转发端口,一切都很好,只是让引擎处于“接收”模式,我很愚蠢。

抱歉,我真的到处都找过了。我希望能够连接到数据库并从移动应用程序添加数据。所有应用程序和传输数据都运行良好,我只需要能够运行带有数据库的服务器并接收数据。任何比库存 H2 服务器模式文档更清晰的教程或文档将不胜感激。

谢谢!

最佳答案

出于安全原因,默认情况下 H2 服务器(包括 TCP 服务器)为 protected against remote access 。您在客户端收到的错误消息应该清楚这一点。您必须使用 -tcpAllowOthers 显式启用远程访问(对于 TCP 服务器):

java -cp h2.jar org.h2.tools.Server -tcp -tcpAllowOthers

这只会启动 TCP 服务器 - 有关详细信息,请参阅文档。

关于java - 托管 H2 数据库并接受连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11842284/

相关文章:

java - 填充 JTable 时重复值

java - Android 定时任务(相当于cronjob)

java - Flyway + h2内存数据库+ hibernate +测试导致表不存在

java - 找不到适合 jdbc :h2:tcp 的驱动程序

java - H2 内存数据库。找不到表

java - 将参数从 DialogFragment 传递到 Fragment

java - IntelliJ 在鼠标悬停时显示 JavaDocs 工具提示

java - 如何在java中的kafka中获取消费者组的消费者滞后

java - MyBatis 如何为不同的数据库后端生成不同的 sql

hibernate - CRUD 存储库不遵守 UNIQUE 约束