h2数据库集群部署,备份及恢复

h2数据库集群部署

一. 环境准备

  • 准备两台机器,分别为Server1 , Server2

二. h2数据库安装

  • 下载地址
http://h2database.com/html/download.html
  • 将下载的压缩包解压到指定目录
cd /opt
uzip h2-2019-10-14.zip
  • 创建储备数据目录
Server1:
	mkdir /opt/h2/bin/h2ser1
Server2:
	mkdir /opt/h2/bin/h2ser1
  • 配置启动文件h2.sh
Server1:
	vim /opt/h2/bin/h2.sh
	java -cp "$dir/h2-1.4.200.jar:$H2DRIVERS:$CLASSPATH" org.h2.tools.Server -tcpAllowOthers -tcpPort 9101 -webAllowOthers -webPort 8082 -baseDir /opt/h2/bin/h2ser1 -ifNotExists "$@"

Server2:
	vim /opt/h2/bin/h2.sh
	java -cp "$dir/h2-1.4.200.jar:$H2DRIVERS:$CLASSPATH" org.h2.tools.Server -tcpAllowOthers -tcpPort 9101 -webAllowOthers -webPort 8082 -baseDir  /opt/h2/bin/h2ser2 -ifNotExists "$@"

在这里插入图片描述

三. 创建集群

  • 在Server1执行以下命令即可;
java -cp h2-1.4.200.jar org.h2.tools.CreateCluster -urlSource "jdbc:h2:tcp://主数据库IP地址:9101/testCluster" -urlTarget "jdbc:h2:tcp://备数据库IP地址:9101/testCluster" -user "sa" -serverList "172.17.170.190:9101,172.17.171.248:9101"
  • 查看集群是否创建成功

h2数据库集群部署,备份及恢复_第1张图片
h2数据库集群部署,备份及恢复_第2张图片

四. 主数据库挂掉,主数据库同步备数据库

  • 首先删除主库的数据文件
rm –rf /opt/h2/bin/h2ser1/testCluster.mv.db
  • 启动主数据库
nohup sh /opt/h2/bin/h2.sh
  • 执行以下命令,创建集群数据库
java -cp h2-1.4.200.jar org.h2.tools.CreateCluster -urlSource "jdbc:h2:tcp://备数据库IP地址:9101/testCluster" -urlTarget "jdbc:h2:tcp://主数据库IP地址:9101/testCluster" -user "sa" -serverList "172.17.170.190:9101,172.17.171.248:9101"

五. 备数据库挂掉,备数据库同步主数据库

  • 首先删除备份数据库的数据文件
rm –rf /opt/h2/bin/h2ser2/testCluster.mv.db
  • 启动备数据库
nohup sh /opt/h2/bin/h2.sh
  • 执行以下命令,创建集群数据库
java -cp h2-1.4.200.jar org.h2.tools.CreateCluster -urlSource "jdbc:h2:tcp://主数据库IP地址:9101/testCluster" -urlTarget "jdbc:h2:tcp://备数据库IP地址:9101/testCluster" -user "sa" -serverList "172.17.170.190:9101,172.17.171.248:9101"

六. h2数据库备份与恢复

  • 数据库备份
sql备份:
	java -cp /opt/h2/bin/h2-1.4.200.jar org.h2.tools.Script  -url jdbc:h2:tcp://172.17.170.190:9101,172.17.171.248:9101/testCluster -user sa -script test.sql

zip备份:
	java -cp /opt/h2/bin/h2-1.4.200.jar org.h2.tools.Script  -url jdbc:h2:tcp://172.17.170.190:9101,172.17.171.248:9101/testCluster -user sa -script test.zip -options compression zip
  • 数据库导入
sql导入
	java -cp ./bin/h2-1.4.200.jar org.h2.tools.RunScript -url jdbc:h2:tcp://172.17.170.190:9101,172.17.171.248:9101/testCluster -user sa -script ~/testdb.sql

zip导入
	java -cp ./bin/h2-1.4.200.jar org.h2.tools.RunScript -url jdbc:h2:tcp://172.17.170.190:9101,172.17.171.248:9101/testCluster -user sa -script ~/testdb.zip -options compression zip

你可能感兴趣的:(h2数据库,数据库,linux,java)