实操:
1. 创建表,添加数据
1.1 登录 H2
(h2 目录在 /home/h2/h2中)
java -cp /home/h2/h2/bin/h2*.jar org.h2.tools.Shell
1.2 创建3个表,添加1000条数据
1.2.1 创建表
create table t_car1 (id int , car_id text);
create table t_car2 (id int , car_id text);
create table t_car3 (id int , car_id text);
1.2.2 插入1000 车牌数据
insert into t_car1 select x, '粤' || char( 65 + floor(RANDOM()*25)) || upper(left(RANDOM_UUID(),6)) from SYSTEM_RANGE(1, 1000);
insert into t_car2 select x, '桂' || char( 65 + floor(RANDOM()*25)) || upper(left(RANDOM_UUID(),6)) from SYSTEM_RANGE(1, 1000);
insert into t_car3 select x, '湘' || char( 65 + floor(RANDOM()*25)) || upper(left(RANDOM_UUID(),6)) from SYSTEM_RANGE(1, 1000);
1.2.3 查看数据
with a as (select * from t_car1 limit 5),b as (select * from t_car2 limit 5),c as (select * from t_car3 limit 5)
select * from a union all
select * from b union all
select * from c;
2. 备份数据库
2.1 脚本备份
java -cp /home/h2/h2/bin/h2*.jar org.h2.tools.Script -url jdbc:h2:~/test_bak_res -user sa -script test_bak_res.zip -options compression zip
zip 里面的文件
2.2 在线备份
BACKUP TO 'test_bak_res_backup.zip'
zip 里面文件:
2.3 命令行备份
java -cp /home/h2/h2/bin/h2*.jar org.h2.tools.Backup -?
java -cp /home/h2/h2/bin/h2*.jar org.h2.tools.Backup -file test_bak_res_bb.zip -dir ~ -db test_bak_res
Zip 里面文件:
3. 恢复
3.1 脚本恢复
java -cp /home/h2/h2/bin/h2*.jar org.h2.tools.RunScript -url jdbc:h2:~/test_res -user sa -script test_bak_res.zip -options compression zip
成功恢复!!
3.2 命令行恢复
java -cp /home/h2/h2/bin/h2*.jar org.h2.tools.Restore -?
java -cp /home/h2/h2/bin/h2*.jar org.h2.tools.Restore -file test_bak_res_bb.zip -dir ~ -db test_res3
ll test_res*