从http://dbeaver.jkiss.org/下载了一个DBeaver1.4版,该软件完全免费,功能与DBVisualizer相比,稍差一些,但是简单易用,运行效率似乎要高一些。这里以Sybase ASA, Sybase ASE, MySQL为例,介绍一下它的简单配置和使用。

1. 下载http://dbeaver.jkiss.org/ DBeaver1.4
我向来只使用解压缩版:http://dbeaver.jkiss.org/files/dbeaver-1.4.0-win32.win32.x86.zip

2. 将其解到d:\tools, 这样会有一个根目录dbeaver, 里边有一个可执行程序dbeaver.exe,如果看看其中的readme,就知道它依赖一个外部的jvm。创建一个dbeaver.exe的快捷方式,在其目标(target)里设置为:D:\tools\dbeaver\dbeaver.exe -vm D:\shared\jdk1.6.0_02\bin\javaw, 用于指定jvm的位置。当然,你得事先准备好jdk1.6才行。

3.点开那个快捷方式,把DBeaver启起来。同时准备好Sybase的jdbc驱动,ASE和ASA可以共用一个驱动。在dbeaver下建立子目录drivers\sybase, 把jconn3.jar放进去。如果你手头没有,可以从已经安装好的ASA11/12, java子目录下复制一个,或者从ASE15\jConnect-6_0\classes子目录下边复制一个。要是手头就没有这些安装版本,那么可以从这里的附件jconn3http://dl.iteye.com/topics/download/86b782dc-b1e2-314d-8135-f733ef6db518里复制一个。

4. 开始添加jdbc driver manager, database->Driver Manager->create new driver
ASA的driver配置如下图所示:
DBeaver数据库管理工具连接Sybase数据库使用体验
ASE的driver配置如下图所示:
DBeaver数据库管理工具连接Sybase数据库使用体验

(注:虽然模板里头有一个sybase的jdbc driver示例,但那是jTDS,是一个开源产品,支持并不是太好,不如官方的jconn3.jar)

5.有了两个已经注册好的driver manager,我们就可以创建到ASA和ASE的连接了。
对ASA,可以现场建一个:
Java代码 DBeaver数据库管理工具连接Sybase数据库使用体验
  1. d:\shared\ASA110\BIN32>dbinit.exe..\demo.db
  2. SQLAnywhere初始化实用程序版本11.0.1.2250
  3. CHAR归类序列:936ZHO(CaseSensitivity=Ignore)
  4. CHAR字符集编码:GBK
  5. NCHAR归类序列:UCA(CaseSensitivity=Ignore;AccentSensitivity=Ignore;PunctuationSensitivity=Primary)
  6. NCHAR字符集编码:UTF-8
  7. 正在创建系统表
  8. 正在创建系统视图
  9. 正在设置选项值
  10. 已成功创建数据库"..\demo.db"
  11. 起db服务:
  12. d:\shared\ASA110\BIN32>dbeng11.exe..\demo.db


然后用dbeaver连接这个ASA, 端口是2638. 如图:
DBeaver数据库管理工具连接Sybase数据库使用体验
这样你就可以成功的连接该demo数据库了。

至于ASE, 更简单了。
其连接信息如下图所示:
DBeaver数据库管理工具连接Sybase数据库使用体验
这是ASE连接的局部效果图:
DBeaver数据库管理工具连接Sybase数据库使用体验

6. 有一种特殊的情况,很多人容易犯错,就是上边提到的ASA连接,那个dbeng只启动了一个demo.db, 要是它同时启动多个db,怎么创建到各个db的连接呢?
比如,我启动了demo2.db和demo.db两个db,在一个engine或者service里头。
在键的地方在于设置一个特殊的属性, 那就是SERVICENAME属性,填上db的名字即可。
demo.db对应的就是demo, demo2.db对应的就是demo2.
启动多个db,要用dbsrv实用程序:d:\shared\ASA110\BIN32>dbsrv11.exe ..\demo.db ..\demo2.db

7. 至于MySQL,就比较简单了。我们可以在drivers子目录下边建立一个mysql子目录存放mysql的jdbc驱动。mysql-connector-java-5.0.7-bin.jar即可。你可以在mysql官网上下载。关于快速安装和找建mysql,可以参考我的另一篇文章:
http://iihero.iteye.com/blog/995036, 里边有一处更新。
这是下载安装mysql5.1.58的一个输出中间结果,最终应该会生成iihero5.1服务。

启动iihero5.1服务以后,进到d:\mysql相关目录:
Java代码 DBeaver数据库管理工具连接Sybase数据库使用体验
  1. d:\mysql-5.1.58-win32\bin>mysql-uroot
  2. WelcometotheMySQLmonitor.Commandsendwith;or\g.
  3. YourMySQLconnectionidis4
  4. Serverversion:5.1.58-communityMySQLCommunityServer(GPL)
  5. Copyright(c)2000,2010,Oracleand/oritsaffiliates.Allrightsreserved.
  6. ThissoftwarecomeswithABSOLUTELYNOWARRANTY.Thisisfreesoftware,
  7. andyouarewelcometomodifyandredistributeitundertheGPLv2license
  8. Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement.
  9. mysql>usemysql
  10. Databasechanged
  11. mysql>selectuser,host,passwordfromuser;
  12. +------+-----------+----------+
  13. |user|host|password|
  14. +------+-----------+----------+
  15. |root|localhost||
  16. |root|127.0.0.1||
  17. ||localhost||
  18. +------+-----------+----------+
  19. 3rowsinset(0.00sec)
  20. mysql>


密码为空总为不妥,可以按照:http://dev.mysql.com/doc/refman/5.1/en/assigning-passwords.html里的介绍修改一下root的密码:
Java代码 DBeaver数据库管理工具连接Sybase数据库使用体验
  1. mysql>setPASSWORD=PASSWORD('test123');
  2. QueryOK,0rowsaffected(0.00sec)
  3. mysql>setPASSWORDfor''@'localhost'=PASSWORD('test123');
  4. QueryOK,0rowsaffected(0.00sec)
  5. mysql>selectuser,host,passwordfromuser;
  6. +------+-----------+-------------------------------------------+
  7. |user|host|password|
  8. +------+-----------+-------------------------------------------+
  9. |root|localhost|*676243218923905CF94CB52A3C9D3EB30CE8E20D|
  10. |root|127.0.0.1||
  11. ||localhost|*676243218923905CF94CB52A3C9D3EB30CE8E20D|
  12. +------+-----------+-------------------------------------------+
  13. 3rowsinset(0.00sec)


这样root和''用户的密码就改为test123了。
再使用DBeaver创建连接并登录,非常方便。以下是总体截图:

DBeaver数据库管理工具连接Sybase数据库使用体验
总体感觉是这个工具用起来比较简单明了。
我自己也开发了一个xsql命令行工具,完全是console方式。

相关文章: