H2是Thomas Mueller提供的一个开源的、纯java实现的关系数据库。
官方网站:https://www.h2database.com/
下载地址:https://www.h2database.com/html/download.html
https://github.com/h2database/h2database/releases/download/version-2.2.224/h2-2023-09-17.zip
上传安装包到/data/soft目录
H2 数据库服务器默认监听 9092 端口用于 TCP 连接,8082 端口用于 Web 连接,可以自定义修改
H2 数据库依赖java,需要先安装java环境
1、安装
unzip /data/soft/h2-2023-09-17.zip -d /data/server/ #解压
mkdir -p /data/server/h2/data #创建数据库存放目录
#配置环境变量
vi /etc/profile
#set h2 environment
export H2_HOME=/data/server/h2
export PATH=$PATH:$H2_HOME/bin
:wq! #保存退出
source /etc/profile #使配置立即生效
2、编辑启动脚本
vi /data/server/h2/h2.sh
#!/bin/bash
# 设置H2数据库的路径
H2_DIR="/data/server/h2"
# 设置H2数据库的日志文件路径
LOG_FILE="$H2_DIR/h2.log"
# 设置H2数据库的PID文件路径
PID_FILE="$H2_DIR/h2.pid"
# 用于 TCP 连接
tcpPort=6092
# 用于 Web 连接
webPort=6082
# 确保H2目录存在
mkdir -p "$H2_DIR"
start_h2() {
# 启动H2数据库服务器
nohup java -cp $H2_DIR/bin/h2*.jar org.h2.tools.Server -tcpPort $tcpPort -tcpAllowOthers -webPort $webPort -webAllowOthers > $LOG_FILE 2>&1 &
# 将H2服务器的PID写入PID文件
echo $! > "$PID_FILE"
# 检查H2服务器是否成功启动
if [ $? -eq 0 ]; then
echo "H2数据库服务器已成功启动。日志输出到 $LOG_FILE 文件中。"
else
echo "启动H2数据库服务器失败,请检查日志文件 $LOG_FILE 获取详细信息。"
fi
}
stop_h2() {
# 检查PID文件是否存在
if [ -f "$PID_FILE" ]; then
# 从PID文件中读取H2服务器的PID并停止该进程
kill $(cat "$PID_FILE")
rm "$PID_FILE"
echo "H2数据库服务器已成功停止。"
else
echo "H2数据库服务器未启动,无需停止。"
fi
}
restart_h2() {
stop_h2
start_h2
}
status_h2() {
# 检查PID文件是否存在
if [ -f "$PID_FILE" ]; then
echo "H2数据库服务器正在运行。PID: $(cat "$PID_FILE")"
else
echo "H2数据库服务器未启动。"
fi
}
# 根据参数调用相应的函数
case "$1" in
start)
start_h2
;;
stop)
stop_h2
;;
restart)
restart_h2
;;
status)
status_h2
;;
*)
echo "用法: $0 {start|stop|restart|status}"
exit 1
esac
:wq! #保存退出
chmod +x /data/server/h2/h2.sh #添加执行权限
sh /data/server/h2/h2.sh #用法: h2.sh {start|stop|restart|status}
3、创建数据库
#进入控制台
cd /data/server/h2/bin
java -cp h2-*.jar org.h2.tools.Shell
[autoops@test bin]$ java -cp h2-*.jar org.h2.tools.Shell
Welcome to H2 Shell 2.2.224 (2023-09-17)
Exit with Ctrl+C
[Enter] jdbc:h2:~/test
URL jdbc:h2:/data/server/h2/data/mydata #设置数据库名称
[Enter] org.h2.Driver
Driver
[Enter]
User autoops #设置用户
Password 123456 #设置密码
Type the same password again to confirm database creation.
Password
Connected
Commands are case insensitive; SQL statements end with ';'
help or ? Display this help
list Toggle result list / stack trace mode
maxwidth Set maximum column width (default is 100)
autocommit Enable or disable autocommit
history Show the last 20 statements
quit or exit Close the connection and exit
sql> quit;
4、通过命令行进入h2数据库控制台
cd /data/server/h2/bin
java -cp h2-*.jar org.h2.tools.Shell
jdbc:h2:tcp://127.0.0.1:6092//data/server/h2/data/mydata;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=false;
#根据提示输入数据库账号和密码进入控制台
至此,Linux下安装H2数据库完成。