h2 web console使用
Posted 太白的技术博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了h2 web console使用相关的知识,希望对你有一定的参考价值。
在高并发情况下,in memory模式下h2的性能要远高于sqlite(单线程下,还是sqlite高很多),当前版本MVStore作为H2的默认存储引擎,无需参数控制。
安装h2 windows版本
C:\\Program Files (x86)\\H2\\bin>java -cp h2-1.4.200.jar org.h2.tools.Shell Welcome to H2 Shell 1.4.200 (2019-10-14) Exit with Ctrl+C [Enter] jdbc:h2:~/test URL jdbc:h2:d:/test/h2db [Enter] org.h2.Driver Driver [Enter] User sa Password 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可以点击下列HELP:
总的来说,h2的bug还是挺多的、open状态的bug其实也不少,可以参见https://github.com/h2database/h2database/issues。
h2测试时,有一个比较高效的方法,即其他源生成csv文件,然后通过CSVREAD查询结果。通过CSVWRITE写到CSV文件。
call CSVWRITE(\'d:\\\\h2\\\\ta4.csv\', \'select * from ta4\', \'charset=UTF-8 fieldSeparator=| writeColumnHeader=false\');
select * from csvread(\'d:\\\\h2\\\\ta4.csv\', \'FUND_CODE|FUND_TYPE|REAL_SHARES_SUM|TOTAL_REAL_SHARES\', \'charset=UTF-8 fieldSeparator=|\');
create table tmp_ta4 as select * from csvread(\'d:\\\\h2\\\\ta4.csv\', \'FUND_CODE|FUND_TYPE|REAL_SHARES_SUM|TOTAL_REAL_SHARES\', \'charset=UTF-8 fieldSeparator=|\');
有时候h2会发生在create table时无法锁定sys表的情况,参见:https://stackoverflow.com/questions/26511508/timeout-trying-to-lock-table-sys。但是通过查看INFORMATION_SCHEMA,没有发现sys表,应该是一个内部表。如果是1.3版本,可以升级到1.4使用MVCC,如果是1.4,只能考虑增加DEFAULT_LOCK_TIME及LOCK_TIME。
以上是关于h2 web console使用的主要内容,如果未能解决你的问题,请参考以下文章