单机MySQL性能_单机数据库性能测试总结

当前单机数据库(文件型数据库)有很多,为了选择更好的数据库,以便以后使用,在这主要对以下数据库进了插入、查询的速度进行测试,以及数据库的管理方式进行详细说明。数据库分别为:SQLLite、FireBird、Derby、HSql、PostgreSQL、JavaDB、H2等。

1、sqlite

驱动包:sqlitejdbc-v056.jar

驱动包的版本要正确,一开始我用sqlite-jdbc-3.6.0.jar导致hibernate在大批量插入时会中断。

Hibernate 连接配置:

hibernate.dialect sqlDialect.SQLiteDialect

hibernate.connection.driver_class org.sqlite.JDBC

hibernate.connection.username

hibernate.connection.password

hibernate.connection.url jdbc:sqlite:d:/sqlite/test50w.db

其中sqlDialect.SQLiteDialect是自己编写的一个继承org.hibernate.dialect.Dialect的java类。

连接完后系统会在url的路径下创建指定数据库名的数据库。

管理工具:下载sqliteadmin.zip包解压后执行sqliteadmin.exe.

特点:不支持存储过程,不支持外键,多进程可以同时打开同一个数据库,也可以同时 SELECT ,但只有一个进程可以立即改数据库,用like查询的方式查较慢。

优点:占用空间少,打开数据库速度快,SQLite不支持存储过程,不支持外键,多进程可以同时打开同一个数据库,也可以同时 SELECT

缺点:查询速度一般,只有一个进程可以立即改数据库

2、Firebired

驱动包:jaybird-2.1.6.jar、jaybird-full-2.1.6.jar、jaybird-pool-2.1.6.jar

Hibernate连接配置:

hibernate.dialect org.hibernate.dialect.FirebirdDialectw

hibernate.connection.driver_class org.firebirdsql.jdbc.FBDriver

hibernate.connection.username sysdba

hibernate.connection.password masterkey

hibernate.connection.url jdbc:firebirdsql:localhost:d:/firebird/TEST100W.fdb

数据库的管理工具:

(1)Firebird isql tool:下载fodesk.rar解压后安装,运行该工具,在命令行输入:create database数据库名 user 'sysdba' passwrod 'masterkey'.如下图所示:

wps_clip_image-26735.png

数据库名扩展名.fdb要输入,用户名和密码必须用单引号。

完成后在路径下新增了一个扩展名为.fdb的数据库文件。

(2)FlameRobin界面管理工具

下载flamerobin-0.8.3-setup.exe安装后软件界面。

wps_clip_image-716.png

特点:文件占用空间少,插入记录时间较慢,支持多线程的读写。

优点:占用空间少,支持多线程的读写

缺点:无事务插入速度慢,建立索引后查询速度慢

3、Derby

驱动包:derby.jar

Hibernate连接配置:

hibernate.dialect org.hibernate.dialect.DerbyDialect

hibernate.connection.driver_classorg.apache.derby.jdbcEmbeddedDriver

hibernate.connection.username

hibernate.connection.password

hibernate.connection.url jdbc:derby:d:/derby/testsize50w;create=true

连接完后系统会在url的路径下创建指定数据库名的数据库,数据库存在后可以将配置中的create=true去掉。

数据库以文件的形式存在,如testsize50w数据库,以testsize50w为文件夹,下有:

wps_clip_image-1527.png

数据库管理工具:IJ管理工具

解压db-derby-10.5.3.0-bin.zip后在db-derby-10.5.3.0-bin/db-derby-10.5.3.0-bin/bin下可以找到ij.bat文件。运行既可,数据库的连接命令:connect  'jdbc:derby:d:/derby/testsize50w';

也可以安装eclipse插件,在eclipse开发时可以管理数据库,安装插件包:derby_core_plugin_10.5.3.zip

数据库特点:插入记录较慢,查询速度一般。不支持多线程的读写。

优点:查前面几页时速度快

缺点:占用空间大,无事务插入时速度慢,有事务插入时也慢,不支持多线程的读写

4、HSql

它有五种模式:Hsqldb Server、Hsqldb Web Server、Hsqldb Servlet、In-Process(Standalone)模式、Memory-Only数据库本文主要采用In-Process(Standalone)模式。

驱动包: hsqldb.Jar

驱动包在hsqldb-2.0.0-rc9.zip解压后hsqldb-2.0.0-rc9/hsqldb/lib下,驱动包的版本要正确,一开始我用1.8版本的包,导致hibernate用独占(file)连接时无法连接上。

Hibernate连接配置:

hibernate.dialect org.hibernate.dialect.HSQLDialect

hibernate.connection.driver_class org.hsqldb.jdbcDriver

hibernate.connection.username sa

hibernate.connection.password

hibernate.connection.url  jdbc:hsqldb:file:d:/hsql/test100w/test100w;ifexits=true

其中ifexits=true可以不写

管理工具类:

·org.hsqldb.util.DatabaseManager

·org.hsqldb.util.DatabaseManagerSwing

·org.hsqldb.util.Transfer

·org.hsqldb.util.QueryTool

·org.hsqldb.util.SqlTool

创建数据库:在指定的路径中新建一个数据库文件夹(test),将hsqldb.jar放在该文件夹下。并添加一个runcreate.bat文件,内容为:

java -cp hsqldb.jar org.hsqldb.server.Server -databasetest

运行后会创建一个数据库testhsqldb,数据库文件包括:

·test.properties

·test.script

·test.log

·test.data

·test.backup

图形管理工具:在文件夹test下添加runmanager.bat文件。内容为:

java -Xms512m -Xmx512m -cp ../hsqldb.jar org.hsqldb.util.DatabaseManager

其中当数据库大时需要添加-Xms512m -Xmx512m参数,否则可以不要。 运行该文件:

wps_clip_image-24925.png

输入连接信息后,单击OK完成连接。

特点:占用空间小,查询速度快,但是超过10几万条记录时打开数据库非常慢,而且简直无法插入,占用的内存暴涨,需要调高内存后才能进行操作。插入速度快。不支持多线程的读写

优点:无事务插入时速度快,有事务插入时速度快,无索引查询速度快,建立索引后查询速度快like中文查询快

缺点:打开数据库速度慢,较耗内存。不支持多线程的读写

5、PostgreSQL

驱动名:postgresql-8.4-701.jdbc3.jar

Hibernate 连接配置

hibernate.dialect org.hibernate.dialect.PostgreSQLDialect

hibernate.connection.driver_class org.postgresql.Driver

hibernate.connection.username postgres

hibernate.connection.password postgresql

hibernate.connection.url jdbc:postgresql://localhost:5432/test5w?charSet=UTF-8

数据的管理工具:

它必须安装数据库软件,解压postgresql-8.4.3-1-windows.zip包后执行postgresql-8.4.3-1-windows.exe安装数据库软件。

wps_clip_image-19815.png

创建新的数据库,每个数据库对应一个Id,存放在:postgresql安装目录下的PostgreSQL/8.4/data/base下。以各自的id为文件夹,下包括它的数据文件。

应用程序在连接数据库时,数据库服务必须先启动。

特点:要先安装数据库服务器,数据库较在。支持多线程的读写,用like的方式查比较慢

6、javaDb

新安装了 JDK 6 的程序员们也许会发现,除了传统的bin、jre 等目录,JDK 6 新增了一个名为db 的目录。这便是Java 6 的新成员:Java DB。这是一个纯Java 实现、开源的数据库管理系统(DBMS),源于Apache 软件基金会(ASF)名下的项目Derby。

驱动包:jdk1.6/db/lib/derby.jar

Hibernate连接配置:与derby一样

数据库管理工具与derby一样

优点:数据库安装方便

缺点:占用空间大,分页查询时速度较慢,不支持多线程的读写

7、H2

驱动包:h2-1.2.135.jar

Hibernate连接配置:

hibernate.dialect org.hibernate.dialect.H2Dialect

hibernate.connection.driver_class org.h2.Driver

hibernate.connection.username sa

hibernate.connection.password

hibernate.connection.url jdbc:h2:d:/h2/test100w/testh2

连接完后系统会在url的路径下创建指定数据库名的数据库。

数据库管理工具:安装h2-setup-2010-05-08.exe

界面如下:

wps_clip_image-18373.png

设置完成后单击connect即可.

特点:不支持多线程,数据插入快。索引后查询速度快

优点:建立索引后查询速度快

缺点:关闭数据库慢,无索引查询速度慢,数据量大时like中文查询慢,不支持多线程

以上是用hibernate的连接,用jdbc的连接相似,驱动和URL都一样。

测试结果如下:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值