之前在树莓派上面操作时候,遇到一些业务方面的bug,和团队中的同事经过多次尝试,但就是难以重现用户现场的问题。

但是问题却实实在在地发生,虽然并不是必然可重现的bug,但是也比较闹心;

发生了问题,也只能通过数据库,直接操作,作为临时解决方案。

这里记录一下,操作h2数据库的相关的信息。

---------------------------------------------

操作分两种,一种通过linux shell下的命令行方式操作,另外一种是在Web Console的操作,类似与MySQL上面采用PHPAdmin操作一样。见下面:

1、Shell Console

首先下载h2 (h2下载地址:http://pan.baidu.com/s/1slOzQpv) ,上传到盒子上(如:/home/lifeccp/jdbc/)。然后执行如下命令:

java -cp h2*.jar org.h2.tools.Shell

更加提示,依次输入database URL, JDBC driver, user name, and password,即可进入Shell Console:

sql> list

Result list mode is now on

sql> select * from test;

2、WEB Console

修改盒子上的Nginx配置,增加如下信息:

location /h2-console {

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwared-For $proxy_add_x_forwarded_for;

        proxy_set_header Host $http_host;

        proxy_set_header X-NginX-Proxy true;

        proxy_pass http://127.0.0.1:8090/h2-console;

        proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_set_header Upgrade $http_upgrade;

        proxy_set_header Connection "upgrade";

     } 

重启Nginx,成功后,盒子内网环境下,直接访问http://盒子IP/h2-console/即可打开H2 WEB Console。

----------------------------------------------------------------------------------------------------

java -cp h2-1.4.192.jar org.h2.tools.Shell
URL:
jdbc:h2:~/.h2/osprey;AUTO_SERVER=true;
Driver:
org.h2.Driver

lifeccp@raspberrypi:~/h2-driver $ java -cp h2-1.4.192.jar org.h2.tools.Shell

Welcome to H2 Shell 1.4.192 (2016-05-26)
Exit with Ctrl+C
[Enter] jdbc:h2:~/test
URL jdbc:h2:~/.h2/osprey;AUTO_SERVER=true; 
[Enter] org.h2.Driver
Driver org.h2.Driver
[Enter]
User sa
[Enter] Hide
Password
Password

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>

----------------------------------------------------------------------------------------------------
select * from t_study where study_instance_uid='1.2.410.200048.9496.20170301090845';
update t_study set status=1,cuid=113232 where study_instance_uid='1.2.410.200048.9496.20170301090845';

select * from t_study where study_instance_uid='1.2.840.20150323083837.345413';
select * from t_study where study_instance_uid='1.2.840.20150323085841.345435';

当连接OK之后,你就可以按照自己需要,去进行h2数据操作了。

【树莓派】h2数据库操作相关的更多相关文章

  1. 3.数据库操作相关术语,Oracle认证,insert into,批量插入,update tablename set,delete和truncate的差别,sql文件导入

     1相关术语 语句 含义 操作 DML语句 (Data Manipulation Language) 数据库操作语言 insert update delete select DDL语言 (Date ...

  2. 数据库操作相关(sql语句-php)

    文件:db.config.smarty.php 这个文件主要是用于数据库配置 <?php $db = array( 'host'=>'localhost', 'user'=>'roo ...

  3. Django中数据库操作相关的错误

    问题:字段修改属性发生错误 1> >python manage.py makemigrations You are trying to add a non-nullable field ' ...

  4. 数据库操作相关(sql语句-命令行)

    创建数据库: create database books; 创建用户: mysql> grant select,insert,delete,uptate     -> on books.* ...

  5. Oracle数据库操作相关

    1. 导出dmp 文件 (1)导出数据库所有的用户数据: exp system/manage@ORCL file=D:\oracle_dmp\data1.dmp full=y (2)导出指定的用户数据 ...

  6. ThinkPHP数据库操作相关

  7. android中的数据库操作

    如何在android中调用数据库资源 在android中主要有两种方法来实现对数据库的访问,一种是adb shell方式,另一种是通过相关的android 的java类来间接的对数据库来进行操作.其中 ...

  8. android中的数据库操作(转)

    android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库   an ...

  9. 细说MySQL数据库操作

    目录 基本语法: 字符集和校验规则 字符集 校验规则 校验规则的影响 数据库操作相关指令 查询数据库版本 显示数据库语句 显示数据库创建语句 数据库删除语句 查看当前数据库有多少个用户在操作 基本语法 ...

随机推荐

  1. 项目实战(连载):基于Angular2+Mongodb+Node技术实现的多用户博客系统教程(2)

    本章主要讲什么(一句话)?   <项目实战:基于Angular2+Mongodb+Node技术实现的多用户博客系统教程(2)> -- 基于MongoDB的MyBlog数据库知识技术储备(上 ...

  2. 《JAVASCRIPT高级程序设计》节点层次和DOM操作技术

    DOM可以将任何HTML和XML文档描绘成一个由多层次节点构成的结构.节点分为几种不同的类型,每种类型分别表示文档中不同的信息,每种类型都继承与Node接口,因此都共同享有一些属性和方法,同时,也拥有 ...

  3. 蓝桥网试题 java 基础练习 杨辉三角形

    ----------------------------------------------------------- ---------------------------------------- ...

  4. MongoDB基础之五:游标

    1.cursor(游标)是什么 ? 通俗的说,游标不是查询结果,而是查询的返回资源,或者接口. 通过这个接口,你可以逐条读取. 就像php中的fopen打开文件,得到一个资源一样, 通过资源,可以一行 ...

  5. Android安卓身份证识别SDK

    一.Android安卓身份证识别SDK应用背景 这些年,随着互联网金融的极速发展,第三方支付.理财.P2P网贷.征信等APP应用成爆发式的增长,在众多APP中都涉及到对身份证信息的录入,如第三方支付. ...

  6. c#类,接口,结构,抽象类介绍 以及抽象和接口的比较

    c#中的类是最常见的实际上就是对某种类型的对象定义变量和方法的原型. 结构是值类型,而类是引用类型. 1.与类不同,结构的实例化可以不使用 new 运算符.结构可以声明构造函数,但它们必须带参数. 2 ...

  7. ios 动画学习的套路 (二)

    有它们俩你就够了! 说明:下面有些概念我说的不怎么详细,网上实在是太多了,说了我觉得也意义不大了!但链接都给大家了,可以自己去看,重点梳理学习写动画的一个过程和一些好的博客! (一) 说说这两个三方库 ...

  8. bootstrap - btn

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. JavaScript 深浅拷贝

    JavaScript有五种基本数据类型(Undefined, null, Boolean, String, Number),还有一种复杂的数据类型,就是对象. Undefined 其实是已声明但没有赋 ...

  10. JS打开摄像头并截图上传

    直入正题,JS打开摄像头并截图上传至后端的一个完整步骤 1. 打开摄像头主要用到getUserMedia方法,然后将获取到的媒体流置入video标签 2. 截取图片主要用到canvas绘图,使用dra ...