ehxz 发表于 2013-2-22 02:29:18

Sybase ASA9/ASA10的使用方法

  Sybase除了大型商用关系数据库ASE以外,还有非常有名的嵌入式数据库,称为Adaptive Server Anywhere,到了版本10,就改称为Sql Anywhere。自从Sybase收购mobile365以后,它也越来越受到更多的关注了。
当你安装完ASA以后,你会发现这个软件包居然有很大,ASA9大约有170M左右,ASA10的windows版本可以达到240M左右。
实际上,我们经常能用到的东西仅需要其中几个目录就可以,将这些目录提取出来,压缩以后,就4M左右。本文介绍的内容仅供学习者自己探索,如果商用,请尊重版权。1. 必要的环境变量ASA9涉及到的环境变量主要有两个,set ASANY9=d:\SybaseASA9set ASANYSH9=d:\SybaseASA9\SharedASA10涉及到的环境变量主要也是两个,set SQLANY10=D:\SybaseASA10set SQLANYSH10=D:\SybaseASA10注意变量名称的变化。所谓share目录主要用于存放jconnect, sybcentral等jdbc驱动、sybcentral GUI客户端工具等
2.量体裁衣原始的目录结构可能是如下的样子:cecharsetsdocsdrivershjavaMobiLinkPalmreadme.txtSamplesscriptsSharedsnmpsupporttempultralitewin32
这里有很多都是不需要的。经过处理,我可以只留下win32和scripts子目录就可以让ASA工作。而shared目录下边的jdbc驱动完全是独立的,你完全可以把它抽到别的地方。
在做了这样的工作以后,现下需要写一个批处理脚本用于启动ASA数据库。a. asa-setenv.bat (用于设置环境变量)@echo offset ASANY9=D:\SybaseASA9if not "%ASANY9%" == "" set PATH=%ASANY9%\win32;%PATH%
b. asa-init.bat (这个显然用于建立ASA的数据库)@echo offcall "%~dp0asa-setenv.bat"echo Initializing Database...echo %ASANY9%\win32\dbinit.exe %*"%ASANY9%\win32\dbinit.exe" %*
c. asa-startsvr.bat (以Server模式启动ASA数据库)@echo offcall "%~dp0asa-setenv.bat"echo Starting Database...echo %ASANY9%\win32\dbsrv9.exe %*"%ASANY9%\win32\dbsrv9.exe" %*
d. asa-starteng.bat(以Personal DB的模式启动ASA数据库)@echo offcall "%~dp0asa-setenv.bat"echo Starting Database...echo %ASANY9%\win32\dbeng9.exe %*"%ASANY9%\win32\dbeng9.exe" %*
e. asa-stop.bat (停止数据库)@echo offcall "%~dp0asa-setenv.bat"echo Stopping Database...echo %ASANY9%\win32\dbstop.exe %*"%ASANY9%\win32\dbstop.exe" %*
我们来看一个示例:1.创建一个新的ASA数据库文件:D:\shared\ASA902>asa-init eherodemo.dbInitializing Database...D:\shared\ASA902\win32\dbinit.exe eherodemo.dbAdaptive Server Anywhere Initialization Utility Version 9.0.2.3302Creating system tablesCollation sequence: 936ZHOCreating system viewsSetting permissions on system tables and viewsSetting option valuesInitializing UltraLite deployment optionDatabase "eherodemo.db" created successfully
2.以Server模式启动eherodemo.dbD:\shared\ASA902>asa-start eherodemo.dbStarting Database...D:\shared\ASA902\win32\dbsrv9.exe eherodemo.dbransaction log: eherodemo.logStarting checkpoint of "eherodemo" (eherodemo.db) at Fri Jul 20 2007 14:20
Finished checkpoint of "eherodemo" (eherodemo.db) at Fri Jul 20 2007 14:20Database "eherodemo" (eherodemo.db) started at Fri Jul 20 2007 14:20Database server started at Fri Jul 20 2007 14:20Trying to start SharedMemory link ...
SharedMemory link started successfully
Trying to start NamedPipes link ...
NamedPipes link started successfully
Trying to start TCPIP link ...
Starting on port 2638TCPIP link started successfully
Trying to start SPX link ...
SPX communication link not started
Now accepting requests
3. 多带几个参数来启动asa-start.bat -x tcpip(ServerPort=2638) -n testdemodb eherodemo.db表示启来的数据库的servername是testdemodb,但数据库文件名是eherodemo.db,不带-n选项,则数据库名就是eherodemo
PersonalDB和Server DB的区别在于,前者只用于单机客户端访问,而后者可以为多个远程客户端提供并发访问。
针对ASA10, 它为ASA9提供了升级工具:这里有一个脚本用于简单的将asa9数据库升级到asa10数据库,脚本内容(asa-unload.bat):@echo offsetlocalcall "%~dp0asa-setenv.bat"echo Unloading Database...echo %SQLANY10%\win32\dbunload.exe %*"%SQLANY10%\win32\dbunload.exe" %*endlocal
下边是一个升级的运行结果:d:\shared\ASA100>asa-unload.bat -c "dbf=d:\shared\asa902\eherotest.db;uid=dba;pwd=sql" -n eherotest10.dbUnloading Database...d:\shared\ASA100\..\ASA100\win32\dbunload.exe -c "dbf=d:\shared\asa902\eherotest.db;uid=dba;pwd=sql" -n eherotest10.dbSQL Anywhere Unload Utility Version 10.0.0.2745Connecting and initializingUnloading user and group definitionsUnloading table definitionsUnloading index definitionsUnloading functionsUnloading view definitionsUnloading proceduresUnloading triggersUnloading SQL Remote definitionsUnloading MobiLink definitions
使用起来非常方便。
最后,我们可以借用Openclient或者ASA安装时带有的一个jdbc连接工具来连接数据库,这叫jutils。大概有1.2M左右。附件放不下。感觉兴趣的可以到邮箱iiihero AT hotmail.com中索取。我将其打包放到附件里边。也非常好用。不仅可以连接ASA,也可以用来连接ASE。

sxqwhxq 发表于 2015-10-6 16:28:26

年代久远的帖子,不知能否回复。

sxqwhxq 发表于 2015-10-6 16:29:06

不知楼主在会回答不,我是骨灰级的sqlanywhere玩家。
页: [1]
查看完整版本: Sybase ASA9/ASA10的使用方法

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

Mail To:Admin@SybaseBbs.com