因此,我最近才开始学习有关数据库如何工作,如何使用SQL
ect的知识。并决定开始在我的Java应用程序(特别是H2数据库)中实现嵌入式数据库,并且在我编写代码的计算机上似乎运行良好。
当我移到另一台计算机上继续进行编码时,我注意到,即使我移植了嵌入式数据库文件(h2-*。jar),我在第一台计算机上创建的所有准备好的表也不在第二台计算机上存在。我以某种方式先入为主,即通过数据库引擎生成的实际数据也存储在嵌入式数据库文件中。
所以我的问题是,数据库中的数据实际存储在哪里?是否可以准备一个已经包含数千条记录的数据库并将其与实际应用程序一起分发?
我还应该提到,我连接到第一台计算机上的数据库的方式是通过JDBC连接,即URL:JDBC:h2:〜/
test,而当我尝试连接到第二台计算机上的数据库时,该数据库不存在。
谢谢!
阅读常见问题解答:
数据库文件存储在哪里?
当使用数据库URL之类
jdbc:h2:~/test
的数据库时,数据库存储在用户目录中。对于Windows,通常为C:\Documents and Settings\<userName>
或C:\Users\<userName>
。如果未设置基本目录(如中所示jdbc:h2:./test
),则数据库文件存储在启动应用程序的目录(当前工作目录)中。从开始菜单使用H2控制台应用程序时,为<Installation Directory>/bin
。可以在数据库URL中设置基本目录。可以使用固定或相对路径。使用URL时jdbc:h2:file:./data/sample
,数据库存储在目录数据中(相对于当前工作目录)。如果该目录尚不存在,则会自动创建。也可以使用完全限定的目录名(对于Windows,则为驱动器名)。例:jdbc:h2:file:C:/data/test
它是否将其存储在缓存中?我有一个应用程序,但应用程序中没有任何地方。属性是提到的db详细信息。我可以通过邮递员存储数据和查询它。
问题内容: 我只是在评估H2数据库…下载并解压缩了安装文件,并连接到的数据库。是我的主目录,不存在(我希望H2创建它)。 控制台似乎可以正常工作。我创建了一个表并向其中插入了一行。即使断开并重新连接控制台,我也可以看到并查询该表。 但是,我没有看到预期的文件。它在哪里? 问题答案: 您确定没有: 文件?如果没有,请尝试以下操作: 它的作用是寻找H2控制台的Java进程,获取其PID并列出该进程的所
问题内容: 我已经卸载了wamp服务器,现在我需要恢复数据库。我该如何做? 问题答案: 无论如何,您都可以知道: 感谢MySql论坛的Barry Galbraith http://forums.mysql.com/read.php?10,379153,379167#msg-379167
问题内容: 因此,我有了这种elasticsearch安装,可以在用logstash插入数据时使用kibana可视化它们。 conf文件中的所有内容均已注释,因此它使用的是相对于elasticsearch文件夹的默认文件夹。 这怎么可能? 但是,此命令将删除数据: 谢谢。 ps:忘了说我在窗户上 问题答案: 如果您在Linux上安装了ES,则默认数据文件夹位于(CentOS)或(Ubuntu)
我将redis用于发布/订阅以及服务器端缓存。我的意思是,我的应用服务器将redis服务器作为一个进程运行(也可以作为缓存)。我有几个瘦客户端(运行redis client)以发布/订阅模式连接到此应用服务器。我想知道redis在哪里存储缓存数据?单独在服务器中,或者在客户端中也会有一个副本。如果有近100个Redis客户端通过发布/订阅通道连接到服务器,那么以这种方式使用Redis也是一个好主意
我对一个应用程序的JPA层进行了几个单元测试。这个JPA层由JPA实体和一个提供持久化实体所需的基本API的服务组成。单元TET直接使用javax.Persistence类来处理PersistenceManager。然后测试持久性API,我可以在日志中看到创建表和序列等的SQL语句。 persistence.xml文件的相关部分如下所示: 我已经下载了Windows安装程序H2 1.4.200,并