暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

SQLAnywhere1701的Non-Install手动制作

数据库杂记 2023-07-15
82


前言

话说我好多年没有制作这种non-install的版本了。有时候从下载到安装一套Sybase ASA (SQLAnywhere),到安装完成,挺花时间的。现在的ASA已经从很早以前的8.0发展到了17.0.1了。

过去,曾经做过Oracle 9, Oracle 10,  Oracle 11,到了Oracle 12就彻底不做了。时间精力上不允许。Sybase ASE也做过类似的。

以上这些,指的都是Windows下边。Linux上就不说了,因为linux上基本上只是一些copy动作,不需要过多的介绍。

实作分析:

你依然要下载一份ASA17,版本应该是: 1701的任意一个版本。并且将其完整安装到C:\SQLAnywhere,相当于原始的完全安装包。在BIN64目录下边,你会拥有合法的*.lic文件。不是说你非安装版,就可以随便用了。

以此为基础,要准备下述三个文件:

1、patch_install.bat

位于:C:\SQLAnywhere

1SETX SQLANY17 "C:\SQLAnywhere"
2regsvr32 C:\SQLAnywhere\bin64\dbodbc17.dll
3regsvr32 C:\SQLAnywhere\bin64\ulodbc17.dll

这个是到时候你到新机器上解压以后,要立即执行的。

2、文件:.scRepository17011_64

它位于路径:C:\SQLAnywhere\Bin64下边:

 1#
2SCRepositoryInfo/Version=4
3#
4Providers/ultralite1700/Version=17.0.11.7059
5Providers/ultralite1700/UseClassloader=true
6Providers/ultralite1700/Classpath=C:\\SQLAnywhere\\Java\\ulplugin.jar
7Providers/ultralite1700/ClassloaderId=SA1700
8Providers/ultralite1700/Name=UltraLite 17
9Providers/ultralite1700/AdditionalClasspath=C:\\SQLAnywhere\\Java\\isql.jar;C:\\SQLAnywhere\\Java\\salib.jar;C:\\SQLAnywhere\\Java\\JComponents1700.jar;C:\\SQLAnywhere\\Java\\jodbc4.jar;C:\\SQLAnywhere\\Java\\batik-all-1.10.jar;C:\\SQLAnywhere\\Java\\xml-apis-ext.jar;C:\\SQLAnywhere\\Java\\xmlgraphics-commons-2.3.jar
10Providers/ultralite1700/Provider=ianywhere.ultralite.plugin.ULPlugin
11Providers/ultralite1700/ProviderId=ultralite1700
12Providers/ultralite1700/InitialLoadOrder=2147483647
13#
14Providers/sqlanywhere17011/Version=17.0.11.7059
15Providers/sqlanywhere17011/UseClassloader=true
16Providers/sqlanywhere17011/ClassloaderId=SA1700
17Providers/sqlanywhere17011/Classpath=C:\\SQLAnywhere\\Java\\saplugin.jar
18Providers/sqlanywhere17011/Name=SQL Anywhere 17
19Providers/sqlanywhere17011/AdditionalClasspath=C:\\SQLAnywhere\\Java\\isql.jar;C:\\SQLAnywhere\\Java\\salib.jar;C:\\SQLAnywhere\\Java\\JComponents1700.jar;C:\\SQLAnywhere\\Java\\debugger.jar;C:\\SQLAnywhere\\Java\\jodbc4.jar;C:\\SQLAnywhere\\Java\\batik-all-1.10.jar;C:\\SQLAnywhere\\Java\\xml-apis-ext.jar;C:\\SQLAnywhere\\Java\\dbdiff.jar;C:\\SQLAnywhere\\Java\\diffutils-1.2.1.jar
20Providers/sqlanywhere17011/Provider=ianywhere.sa.plugin.SAPlugin
21Providers/sqlanywhere17011/ProviderId=sqlanywhere1700
22Providers/sqlanywhere17011/InitialLoadOrder=2147483647

3、文件:scjview.ini

它也位于C:\SQLAnywhere\Bin64下边

1JRE_DIRECTORY=C:\SQLAnywhere\Bin64\jre180
2VM_ARGUMENTS=-Xmx512m
3JAR_PATHS=C:\SQLAnywhere\java
4ADDITIONAL_CLASSPATH=
5LIBRARY_PATHS=C:\SQLAnywhere\BIN64
6APPLICATION_ARGUMENTS=-screpository=C:\SQLAnywhere\BIN64;-installdir=C:\SQLAnywhere

这三个文件都不要缺。

将C:\SQLAnywhere整体打包成SQLAnywhere.zip,它就是一个可以工作的版本。

4、验证

将SQLAnywhere.zip解压至另一台机器的C:\,形成一样的目录结构:c:\SQLAnywhere

运行:c:\SQLAnywhere\patch_install.bat,完成最小的环境变量以及ODBC注册。就可以放心使用了。当然,也可以把C:\SQLAnywhere\BIN64追加到环境变量PATH中。

我们直接运行一下SQLAnywhere的Sybase Central 客户端,还是蛮舒服方便的。

小结:

在过去,windows上对数据库软件包进行拆解并重组,也是学习和研究数据库的一种方式方法,并可借此了解各个组件是如何配合使用以完成某项功能的。尤其像Oracle、Sybase ASE这种巨无霸软件包,拆解组合过程,更会遇到相当多的小问题。

Sybase ASA (SQLAnywhere)数据库,可小可大。里边的Ultralite是嵌入式数据库,而ASA本身又可用于中小型数据库,快速搭建数据库环境,是非常实用的。



文章转载自数据库杂记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论