H2数据库的安装和使用

H2数据库的安装和使用

H2数据库的下载地址:

https://www.h2database.com/html/main.html

​ 在官网上选择一个版本进行下载,可以下载安装器或者直接下载软件包。这里我选择 “All Platforms (zip, 9.5 MB)” 版本,解压后,既可用于 Windows 平台,也可用于 Linux 平台(如下图所示)。

在这里插入图片描述

H2软件包目录结构

h2
 |—bin
 | |—h2-2.1.212.jar  //H2数据库的jar包(驱动也在里面)
 | |—h2.bat   //Windows控制台启动脚本
 | |—h2.sh   //Linux控制台启动脚本
 | |—h2w.bat  //Windows控制台启动脚本(不带黑屏窗口)
 |—docs   //H2数据库的帮助文档(内有H2数据库的使用手册)
 |—service   //通过wrapper包装成服务。
 |—src   //H2数据库的源代码
 |—build.bat  //windows构建脚本
 |—build.sh  //linux构建脚本

在这里插入图片描述
在这里插入图片描述

windows下启动软件

​ 我们可以进入到h2的bin目录下,点击h2.bat或者h2w.bat,运行软件。我这里选择的是点击h2w.bat(如上图蓝框),该方式会在后台运行。

Linux下启动软件

​ 在 Linux 环境下,首先用上传命令rz等把压缩文件(.zip)上传到某个目录下,用unzip命令解压,自动解压到h2目录下,然后在h2/bin目录下,运行./h2.sh 文件来启动数据库服务,但不建议这样直接启动,因为需要带一些参数,需要进行如下修改:

1).复制h2.sh为h2_server.sh文件:

​ # cp h2.sh h2_server.sh

2).用vim编辑h2_server.sh,如下:

#!/bin/sh dir=$(dirname" 0 " ) j a v a − c p " 0") java -cp " 0")javacp"dir/h2-2.1.212.jar: H 2 D R I V E R S : H2DRIVERS: H2DRIVERS:CLASSPATH" org.h2.tools.Server -tcpAllowOthers -webAllowOthers -webPort 8082 “$@”

3).说明:

org.h2.tools.Server: 以服务器模式启动;

-tcpAllowOthers: 允许远程机器通过TCP方式访问;

-webAllowOthers: 允许远程机器通过浏览器访问;

-webPort 8082: 默认的访问端口(8082为未被占用的端口,如果此端口已经被其他端口占用,则改为其他端口);

4).具体的运行方式:

chmod修改启动文件权限: # chmod +x h2_server.sh

输入如下命令后台运行: # nohup ./h2_server.sh & 回车

说明:nohup 命令可以在我们退出账户之后继续运行相应的进程,nohup 就是不挂起的意思(no hang up),& 表示让该进程实现后台运行。

该命令的一般形式为: # nohup command & 回车

创建h2数据库

创建数据库

​ H2启动后在桌面底部状态栏右边有一个黄色小图标:

在这里插入图片描述
​ 我们可以在windows窗口右下角黄色小图标处,右键点击H2控制台的图标,选择”Create a new database…“,创建一个新的数据库。
然后进入到控制台设置界面,设置数据库的存放路径和数据库名(如test),访问的用户名和密码,点击Create,则创建出test数据库(如下图)。

在这里插入图片描述
​ 这时候在bin目录下(当前目录)就会出现创建的数据库名称(如下图test.mv.db):

在这里插入图片描述
​ 用鼠标左键点击屏幕右下角H2控制台黄色小图标,则出现浏览器控制台界面如下图:

在这里插入图片描述
注意:

  1. 如果无法点击进入浏览器控制台界面,可以右键点击屏幕右下角H2控制台黄色小图标选择status,出现如下界面后输入H2 Console URL的IP和端口号即可
  2. JDBC URL: h2后填写test.mv.db所在文件夹路径

在这里插入图片描述
​ 最好在H2目录下创建data子目录,把数据库文件存放在该目录下。用鼠标左键点击屏幕右下角H2控制台黄色小图标,则出现浏览器控制台界面如下图:

在这里插入图片描述
​ 用鼠标左键点击屏幕右下角H2控制台黄色小图标,则出现浏览器控制台界面如下图:

在这里插入图片描述

​ 这时候,打开h2/data目录(如果data目录不存在,会创建该目录 ),则发现刚才创建的数据库已在目录中(如下图):

在这里插入图片描述

数据库管理界面

​ 点击测试或连接(Connect),则进入数据库管理界面(如下图)。

在这里插入图片描述

​ 输入【show databases; 和 show tables; 】命令,显示H2默认的数据库和表名(如下图)。

在这里插入图片描述

数据库配置

在这里插入图片描述

​ 我们可以点击【Preferences】按钮,进入到H2的配置界面,这里可以设置端口号等信息:

在这里插入图片描述

​ 点击【Save】,会在当前用户目录下创建数据库配置文件 .h2.server.properties (windows即用户目录,Linux即home目录),见【图16】中的第一个红框。

​ 点击【Translate】,会在h2/bin 目录下,创建一个 translation.properties 文件。

​ 点击【Shutdown】,关闭h2控制台,停止h2数据库服务(屏幕右下角黄色小图标没了)。

​ 如果没有手动配置 .h2.server.properties 文件,以 web-server 方式首次启动 H2 后,既用鼠标左键点击屏幕右下角H2控制台黄色小图标,就会出现web控制台界面,点击【Save】 按钮后就会在当前用户目录下自动创建该文件,或者每次连接【Connect】后,都会在当前用户目录下自动创建该文件。

#H2 Server Properties
#Wed December 27 13:14:20 CST 2023
webSSL=false
webAllowOthers=false
webPort=8082
0=Generic JNDI Data Source|javax.naming.InitialContext|java:comp/env/jdbc/Test|sa
1=Generic Teradata|com.teradata.jdbc.TeraDriver|jdbc:teradata://whomooz/|
2=Generic Snowflake|com.snowflake.client.jdbc.SnowflakeDriver|jdbc❄️//accountName.snowflakecomputing.com|
3=Generic Redshift|com.amazon.redshift.jdbc42.Driver|jdbc:redshift://endpoint:5439/database|
4=Generic Impala|org.cloudera.impala.jdbc41.Driver|jdbc:impala://clustername:21050/default|
5=Generic Hive 2|org.apache.hive.jdbc.HiveDriver|jdbc:hive2://clustername:10000/default|
6=Generic Hive|org.apache.hadoop.hive.jdbc.HiveDriver|jdbc:hive://clustername:10000/default|
7=Generic Azure SQL|com.microsoft.sqlserver.jdbc.SQLServerDriver|jdbc:sqlserver://http://name.database.windows.net:1433|
8=Generic Firebird Server|org.firebirdsql.jdbc.FBDriver|jdbc:firebirdsql:localhost:c:/temp/firebird/test|sysdba
9=Generic SQLite|org.sqlite.JDBC|jdbc:sqlite:test|sa
10=Generic DB2|com.ibm.db2.jcc.DB2Driver|jdbc:db2://localhost/test|
11=Generic Oracle|oracle.jdbc.driver.OracleDriver|jdbc:oracle:thin:@localhost:1521:XE|sa
12=Generic MS SQL Server 2000|com.microsoft.jdbc.sqlserver.SQLServerDriver|jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=sqlexpress|sa
13=Generic MS SQL Server 2005|com.microsoft.sqlserver.jdbc.SQLServerDriver|jdbc:sqlserver://localhost;DatabaseName=test|sa
14=Generic PostgreSQL|org.postgresql.Driver|jdbc:postgresql:test|
15=Generic MySQL|com.mysql.cj.jdbc.Driver|jdbc:mysql://localhost:3306/test|
16=Generic MariaDB|org.mariadb.jdbc.Driver|jdbc:mariadb://localhost:3306/test|
17=Generic HSQLDB|org.hsqldb.jdbcDriver|jdbc:hsqldb:test;hsqldb.default_table_type=cached|sa
18=Generic Derby (Server)|org.apache.derby.client.ClientAutoloadedDriver|jdbc:derby://localhost:1527/test;create=true|sa
19=Generic Derby (Embedded)|org.apache.derby.iapi.jdbc.AutoloadedDriver|jdbc:derby:test;create=true|sa
20=Generic H2 (Server)|org.h2.Driver|jdbc:h2:tcp://localhost/~/test|sa
21=Generic H2 (Embedded)|org.h2.Driver|jdbc:h2:~/test|sa

数据库工具

​ 点击【Tools】,可以对H2数据库进行备份、还原、恢复、集群、运行脚本、删除文件等操作。

参考原文:H2内存数据库使用教程详解

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值