ehxz 发表于 2008-10-4 10:08:44

Sybase ASE中有用的两个小工具(jisql和ribo)

如果你对Sybase ASE12.5(及以上)进行了完全安装,或者安装时,选择了jutils这个组件,那么,你就能使用题目中介绍的两个小工具:jisql以及Ribo,它们位于%SYBASE%\jutils-2_0下边,是基于java的GUI方式。

一、jisql
这是一款轻量级的Sybase查询专用工具,专用于Sybase ASE数据库及Sybase ASA数据库。
进入%SYBASE%\jtuils-2_0\jisql, 你会看到有个批处理文件jisql.bat,要想运行它,最好能安装一个jdk,解压的也行。在文件头,添加JAVA_HOME,以及PATH,把java路径设置上,同时也要设置JDBC_HOME,使其指向Sybase ASE jdbc驱动jconnect的位置:
如:
Set JAVA_HOME=d:\shared\jdk1.5.0_12
Set PATH=%JAVA_HOME%\bin;%PATH%
Set JDBC_HOME=%SYBASE%\jConnect-6_0 (注:jConnect*目录下边classes子目录里存放的就是ASE的jdbc driver)
这样,运行jisql,即会出现下边的界面:


http://p.blog.csdn.net/images/p_blog_csdn_net/iihero/EntryImages/20080927/jisql1.jpg

我们将语言设为中文,填上用户、密码、主机及端口号,即可连接到数据库。这款工具,不仅能连接Sybase的ASE数据库,同样能够连接Sybase的移动数据库SQL Anywhere(移动数据库的全球领导者)。连接上数据库以后,可以看到下述界面:
      http://p.blog.csdn.net/images/p_blog_csdn_net/iihero/EntryImages/20080927/jisql2.jpg
       http://p.blog.csdn.net/images/p_blog_csdn_net/iihero/EntryImages/20080927/jisql3.jpg

执行结果也一目了然。使用一些简单的功能,也还是蛮方便的。
当然,你也可以看看它的命令行帮助:
D:\ASE150\jutils-2_0\jisql>jisql --help
用法:jisql

[-L {metal|system}]
设置外观与感受

[-Z <language>]
{Deutsch|german} 或其它语言

[-d]
获取调试信息输出

[-v]
获取版本号

[-U < Username>]
数据库用户名

[-P < Password>]
用户的数据库口令

[-C <PropertyFile>]
用属性文件作为登录数据

[-S <Hostname:Portnumber[?PropertyString]]>
JDBC URL 的部分


[-S <URL>[?PropertyString]]
完整的 JDBC URL


[-S <JNDI URL>[?PropertyString]]

完整的 JNDI URL

[-M {single|multi}]

single: 所有连接窗口中使用一个菜单

multi: 每个连接窗口都使用各自的菜单

二、Ribo
这个工具是干什么用的呢?大家都知道,Sybase ASE数据库使用的协议是TDS协议,(MS SQL Server使用的也是这个协议,两者的不同点在于,后者使用的是TDS 8.0)这个工具,专用来监听并读取客户端连接ASE数据库时的TDS协议包的。它相当于一个代理服务器,接收客户端的请求,转发至服务器,然后截获服务器发回来的结果,得到所有的TDS包,再把该有的结果发给客户端。

使用时,同样要稍修改%SYBASE%\ jutils-2_0\ribo下的ribo.bat文件,在@echo off下边添加:
set JAVA_HOME=d:\shared\jdk1.5.0_12
set RIBO_HOME=%SYBASE%\jutils-2_0\ribo

这样,直接就可以运行ribo了,推荐gui方式运行,如果条件不允许,也可以不用gui方式(比如通过终端远程登录):ribo –gui,进入下边的界面:
      http://p.blog.csdn.net/images/p_blog_csdn_net/iihero/EntryImages/20080927/ribo1.jpg
相当于代理的端口是5005, 到时候客户端连接这个端口就能被监听,分析出TDS的内容。
这时,不要着急,先设置一下”文件”下边的”配置”再看:
      http://p.blog.csdn.net/images/p_blog_csdn_net/iihero/EntryImages/20080927/ribo2.jpg
把翻译到文件,和在窗口中显示结果都勾上,确定。然后回到主窗口,“开始捕获”。

最后,体验一把,打开一个dos窗口,运行一个isql连接,作一个简单查询:
当然了,先要在你的interfaces文件,也就是%SYBASE%\ini\sql.ini中添加一个注册项,即添加5005这个端口的连接信息。
我这里添加的是:

master=NLWNSCK,sean-laptop,5005
query=NLWNSCK,sean-laptop,5005

于是执行命令并输入密码:
C:\Documents and Settings\hex>isql -Uspring -Ssean iihero
保密字:
1>
这时我发们发现,Ribo会弹出结果窗口:cap1.tds:


http://p.blog.csdn.net/images/p_blog_csdn_net/iihero/EntryImages/20080927/ribo3.jpg


里边的内容蛮有意思的,有时候,你要调试比较复杂难解的程序,说不定就要借助于Ribo。我曾经在使用Openclient ctlib编写应用时,批量读写数据时遇到问题,最终借助于Ribo,得以发现问题。

这两个工具都不大,压缩起来总共也就4.5M,还可以进一步抽取压缩。给开发人员来用,还是蛮方便的。

FROM:http://blog.csdn.net/iihero/archive/2008/09/27/2986930.aspx
页: [1]
查看完整版本: Sybase ASE中有用的两个小工具(jisql和ribo)

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com