Apache Derby数据库系统使用方法
Apache Derby数据库系统使用方法
最近由于项目要求,试用了一下Apache Derby数据库,这里对了解到的内容做一个记录。
Apache Derby是一个开源的关系型数据库管理系统,用Java语言开发,它是在2005年被IBM捐赠给Apache Software Foundation的。它支持SQL-92标准,非常易于使用。
提纲
1、发展历史
2、基本情况介绍
3、应用使用Derby的方式
4、基本使用方法
1、发展历史
============
Apache Derby 项目的目标是构建一个完全用 Java 编程语言编写的、易于使用却适合大多数应用程序的开放源码数据库。开发一个数据库并不简单,Apache Derby 数据库也不例外。但是 Derby 项目并不是从零开始的。
1996年,一个叫做 Cloudscape, Inc 的新公司成立了,公司的目标是构建一个用 Java 语言编写的数据库服务器。公司的第一个发行版在一年之后推出,后来产品的名称变成 Cloudscape。
1999年,Cloudscape, Inc. 被大型数据库厂商 Informix Software, Inc. 收购。
2001年,Informix Software又被 IBM 收购,然后 IBM Cloudscape™ 数据库系统在许多 IBM 的产品中被用作内嵌的数据库引擎。
2004年4月,IBM 把 Cloudscape 数据库软件赠送给 Apache 软件基金会,从此 Apache Derby 项目诞生了。
2、基本情况介绍
==============
Derby 易于管理。当嵌入到客户应用程序中时, Derby 系统不需要任何管理干预。
Derby 是可嵌入的。应用程序可以将数据库管理系统( Database Management System , DBMS )引擎嵌入应用程序进程中,从而无需管理单独的数据库进程或服务。通过网络服务器( Network Server )架构或您选择的服务器架构,可以将 Derby 作为单独的进程来运行。
Derby 是Java 编写的内存数据库,属于 Apache 的一个开源项目,是一个纯 Java 的类库:对于 Java 开发人员,这点十分重要,因为他们正试图维护 Java 技术的优点,例如平台无关性、易于配置以及易于安装。
Derby 不需要专有的 Java 虚拟机( Java Virtual Machine , JVM )。因为完全是用 Java 语言编写的,所以它适应所有合格的 JVM 。
DerbyDBMS 引擎是轻量级的。类文件大小大约是 2MB ,并且只使用了 4MB 的 Java 堆。
Derby 支持使用 Java 编写存储过程和函数,这些存储过程和函数可以在应用程序的任何层上运行。 Derby 没有专用的存储过程语言,它使用 JDBC 。
3、应用使用Derby的方式
=====================
Derby的核心功能已经被打包成一个jar文件了,它的名字是derby.jar,只有 2 MB 大小,不过它运行之后占用内存更小。另外, Derby 数据库可以容易地与应用程序绑定在一起。
应用程序开发人员可以用两种方式使用Apache Derby数据库系统:
- 作为内嵌的数据库使用。这中情况下,用户并不知道数据库的存在,应用程序把数据库集成到自己中,使数据库成为自己的一部分,二者在同一个 JVM 中运行,而数据库把数据保存在本地文件系统中。在内嵌模型中,数据库只与运行在同一JVM 中的应用程序通信。
- 作为专业的数据库服务器使用。是许多商业厂商使用的更传统的模型,在这种模型中,应用程序通过网络连接与数据库通信,应用程序和数据库分别在各自的 JVM 中运行。数据库服务器可以与多个客户机应用程序通信。
4、基本使用方法
==============
这里介绍Apache Derby数据库的安装、作为网络服务器使用的时候它的服务端如何启动、客户端连接服务器、在客户端执行基本的查询命令等内容,有了这些内容,我们可以开始使用Derby,并且做一些基本的操作。
4.1 下载安装
-------------------
下载Apache Derby可以从Derby的官方网站上下载(http://db.apache.org/derby/),下载之后一般是一个类似于db-derby-10.14.2.0-bin.tar.gz这样的压缩文件,安装它的过程,其实就是解压缩此文件到合适的位置。
解压之后,应该在/etc/profile中设置DERBY_HOME环境变量,使它指向derby的安装目录。
环境变量设置之后,应该验证Derby的安装。首先,source derby_home/bin/setEmbeddedCP脚本,运行之后,需要运行sysinfo工具来验证derby的安装是否成功。具体执行过程如下:
[root@localhost db-derby-10.14.2.0-bin]# source bin/setEmbeddedCP /root/Test/db-derby-10.14.2.0-bin [root@localhost db-derby-10.14.2.0-bin]# echo $CLASSPATH /root/Test/db-derby-10.14.2.0-bin/lib/derby.jar:/root/Test/db-derby-10.14.2.0-bin/lib/derbytools.jar:/root/Test/db-derby-10.14.2.0-bin/lib/derbyoptionaltools.jar: [root@localhost db-derby-10.14.2.0-bin]# java org.apache.derby.tools.sysinfo ------------------ Java Information ------------------ Java Version: 1.8.0_144 Java Vendor: Oracle Corporation Java home: /usr/local/jdk1.8.0_144/jre Java classpath: /root/Test/db-derby-10.14.2.0-bin/lib/derby.jar:/root/Test/db-derby-10.14.2.0-bin/lib/derbytools.jar:/root/Test/db-derby-10.14.2.0-bin/lib/derbyoptionaltools.jar: OS name: Linux OS architecture: amd64 OS version: 2.6.32-696.el6.x86_64 Java user name: root Java user home: /root Java user dir: /root/Test/db-derby-10.14.2.0-bin java.specification.name: Java Platform API Specification java.specification.version: 1.8 java.runtime.version: 1.8.0_144-b01 --------- Derby Information -------- [/root/Test/db-derby-10.14.2.0-bin/lib/derby.jar] 10.14.2.0 - (1828579) [/root/Test/db-derby-10.14.2.0-bin/lib/derbytools.jar] 10.14.2.0 - (1828579) [/root/Test/db-derby-10.14.2.0-bin/lib/derbyoptionaltools.jar] 10.14.2.0 - (1828579) ------------------------------------------------------ ----------------- Locale Information ----------------- Current Locale : [English/United States [en_US]] Found support for locale: [cs] version: 10.14.2.0 - (1828579) Found support for locale: [de_DE] version: 10.14.2.0 - (1828579) Found support for locale: [es] version: 10.14.2.0 - (1828579) Found support for locale: [fr] version: 10.14.2.0 - (1828579) Found support for locale: [hu] version: 10.14.2.0 - (1828579) Found support for locale: [it] version: 10.14.2.0 - (1828579) Found support for locale: [ja_JP] version: 10.14.2.0 - (1828579) Found support for locale: [ko_KR] version: 10.14.2.0 - (1828579) Found support for locale: [pl] version: 10.14.2.0 - (1828579) Found support for locale: [pt_BR] version: 10.14.2.0 - (1828579) Found support for locale: [ru] version: 10.14.2.0 - (1828579) Found support for locale: [zh_CN] version: 10.14.2.0 - (1828579) Found support for locale: [zh_TW] version: 10.14.2.0 - (1828579) ------------------------------------------------------ ------------------------------------------------------ [root@localhost db-derby-10.14.2.0-bin]#
4.2 服务器的启动
==============
作为一个专业数据库服务器使用的时候,需要使用两个控制台窗口,一个用于启动Derby数据库服务端,另一个做为访问Derby数据库的客户端。
在命令行进入bin目录,运行startNetworkServer即可启动数据库服务器。
v[root@localhost db-derby-10.14.2.0-bin]# cd bin [root@localhost bin]# ./startNetworkServer Fri Jun 22 15:05:27 CST 2018 : Security manager installed using the Basic server security policy. Fri Jun 22 15:05:28 CST 2018 : Apache Derby Network Server - 10.14.2.0 - (1828579) started and ready to accept connections on port 1527
4.3 客户端连接服务器
=================
在derby_home/bin目录下有一个 ij (interactive java)脚本,它是交互式 Java工具,用来作为客户端与 Apache Derby 数据库服务器通信。
[root@localhost bin]# ./ij ij version 10.14 ij> connect 'jdbc:derby://localhost:1527/test;create=true'; ij>
4.4 基本的使用方法
================
用ij工具连接上derby服务器之后,可以做一些基本的操作,具体如下:
ij> connect 'jdbc:derby:test;create=true' ; #连接数据库test,如果不存在test数据库,则创建它 WARNING 01J01: Database 'test' not created, connection made to existing database instead. ij> connect 'jdbc:derby:test' ; ij(CONNECTION1)> show connections ; #连接到test数据库了,show connections显示了目前已经连接到test数据库的连接有几个,以及当前的连接是哪一个 CONNECTION0 - jdbc:derby:test CONNECTION1* - jdbc:derby:test * = current connection ij(CONNECTION1)> disconnect ; #断开和数据库的连接 ij> show connections ; #查看当前的连接 CONNECTION0 - jdbc:derby:test No current connection ij> set connection CONNECTION0 ; #把CONNECTION0设置为当前连接 ij> show connections ; CONNECTION0* - jdbc:derby:test * = current connection ij> exit ; #退出ij
以上就介绍了Apache Derby的基本使用方法,更多的详细内容,可以参考两个地方,第一个是Apache Derby的官方网站,第二是参考资料2。
参考资料:
1、https://www.cnblogs.com/zuzZ/p/8107915.html
2、https://www.ibm.com/developerworks/cn/opensource/os-ad-trifecta1/index.html?ca=drs-
3、http://db.apache.org/derby/
4、https://www.cnblogs.com/java-class/p/5753997.html
Apache Derby数据库系统使用方法的更多相关文章
- Apache Derby倒斗之路-01小道消息
1.DERBY是什么: Apache Derby 是IBM于2004年贡献给Apache软件基金会的数据库,于2005年正式成为开源项目,Derby作为一个基于JAVA的关系型数据库框架,他拥有许多便 ...
- 小巧数据库 Apache Derby 使用攻略
1. Derby 介绍 将目光放在小 Derby 的原因是纯绿色.轻巧.内存占用小,分分钟在你机子跑起来,自己做点需要连接数据库的代码实践非常方便. 虽然 Mysql 也可以,多一种选择,不是也挺好么 ...
- Apache二级域名配置方法
下面这个Apache二级域名配置方法是今天在其它BBS看到的,以前我配置是都是配置每个为一个虚拟目录今天正在想如何写没想到找到了. Apache二级域名实现方法介绍 首先,你的拥有一个有泛域名解析的顶 ...
- CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL)的方法
CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL)的方法 准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A I ...
- Apache Derby数据库 安装、知识点
Apache Derby数据库 安装: 下载路径:http://archive.apache.org/dist/db/derby/ 出处:http://www.yiibai.com/hive/hive ...
- Ubuntu上开启Apache Rewrite功能的方法
Ubuntu上开启Apache Rewrite功能的方法 本文介绍ubuntn系统中开启apache的urlrewrite功能的方法. 在Windows上开启Apache的urlRewrite非常简单 ...
- 用 Apache Derby 进行 ODBC 编程
用 Apache Derby 进行 ODBC 编程 https://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0409kar ...
- Apache启动错误解决方法
xampp启动时显示的错误为: 10:40:18 [Apache] Error: Apache shutdown unexpectedly.10:40:18 [Apache] This may be ...
- 安装XAMPP后APACHE不能启动解决方法
自己的xampp中的apache启动失败,在网上找到了一篇文章,感觉不错,原文如下: Xampp的获得和安装都十分简单,你只要到以下网址: http://www.apachefriends.org/z ...
随机推荐
- [Mvel]Mvel2.0使用指南一 基础
MVEL在很大程度上受到Java语法的启发,作为一个表达式语言,也有一些根本的区别,旨在更高的效率,例如:直接支持集合.数组和字符串匹配等操作以及正则表达式. MVEL用于执行使用Java语法编写的表 ...
- 毕业生、程序猿转岗该如何选择Java、大数据和VR?答案在这里!
许久不见的朋友请我吃饭,期间给我介绍他一个弟弟,说明年要毕业了,还不知道找啥工作,说有培训机构让他学VR.大数据什么的,不知道前景咋样,想咨询一下我.相信很多朋友面临毕业,都不知道该从事哪个行业,自己 ...
- AS3里面的错误代码
ActionScript 3 出现2048安全策略服务,一种原因是因为843端口下发策略文件有问题,另一种原因是Socket端口有问题,可以用telnet来测试. 其它AS3错误代码的意义可以在官网文 ...
- 前端之JavaScript 补充
1. BOM window location.href = "https://www.sogo.com" location.reload() // 重新加载当前页 location ...
- 在zxing开源项目里,camera.setDisplayOrientation(90)出现错误
[错误提示] setDisplayOrientation(int)未定义 [错误原因] sdk版本过低,这个方法在Android2.2之后才有 [解决方法] 直接在project.propert ...
- PS基础教程[3]如何去除照片上的水印
网络上的照片大部分都有很多的水印,要嘛就是网站的地址,要嘛就是一些煽情的文字,我们看图片想要的可不是这些东西,那么我们怎样去掉图片上的水印呢?本次我们就来分享一下仿制图章工具的使用. 方法 1.打开P ...
- 【转】C#中的线程 入门
Keywords:C# 线程 Source:http://www.albahari.com/threading/ Author: Joe Albahari Translator: Swanky Wu ...
- SCARA——OpenGL入门学习五六(三维变换、动画)
OpenGL入门学习(五) 此课为三维变换的内容,比较枯燥.主要是因为很多函数在单独使用时都不好描述其效果, 在前面绘制几何图形的时候,大家是否觉得我们绘图的范围太狭隘了呢?坐标只能从-1到1,还只能 ...
- hdu 5730 Shell Necklace——多项式求逆+拆系数FFT
题目:http://acm.hdu.edu.cn/showproblem.php?pid=5730 可以用分治FFT.但自己只写了多项式求逆. 和COGS2259几乎很像.设A(x),指数是长度,系数 ...
- tomcat启动报错:org.springframework.beans.factory.BeanCreationException
Web容器在启动时加载 spring 配置文件时解析xml失败常常引起容器启动失败.这次配置文件是 ibatis的sql脚本出了问题: Context initialization failed or ...