分享
 
 
 

經驗總結:Sybase ASA9/ASA10的使用方法

王朝other·作者佚名  2008-08-15
窄屏简体版  字體: |||超大  

Sybase除了大型商用關系數據庫ASE以外,還有非常有名的嵌入式數據庫,稱為Adaptive Server Anywhere,到了版本10,就改稱為Sql Anywhere。自從Sybase收購mobile365以後,它也越來越受到更多的關註了。

當你安裝完ASA以後,你會發現這個軟件包居然有很大,ASA9大約有170M左右,ASA10的windows版本可以達到240M左右。

實際上,我們經常能用到的東西僅需要其中幾個目錄就可以,將這些目錄提取出來,壓縮以後,就4M左右。本文介紹的內容僅供學習者自己探索,如果商用,請尊重版權。

1. 必要的環境變量

ASA9涉及到的環境變量主要有兩個,

set ASANY9=d:\SybaseASA9

set ASANYSH9=d:\SybaseASA9\Shared

ASA10涉及到的環境變量主要也是兩個,

set SQLANY10=D:\SybaseASA10

set SQLANYSH10=D:\SybaseASA10

註意變量名稱的變化。所謂share目錄主要用於存放jconnect, sybcentral等jdbc驅動、sybcentral GUI客戶端工具等

2.量體裁衣

原始的目錄結構可能是如下的樣子:

ce

charsets

docs

drivers

h

java

MobiLink

Palm

readme.txt

Samples

scripts

Shared

snmp

support

temp

ultralite

win32

這裏有很多都是不需要的。經過處理,我可以只留下win32和scripts子目錄就可以讓ASA工作。而shared目錄下邊的jdbc驅動完全是獨立的,你完全可以把它抽到別的地方。

在做了這樣的工作以後,現下需要寫一個批處理腳本用於啟動ASA數據庫。

a. asa-setenv.bat (用於設置環境變量)

@echo off

set ASANY9=D:\SybaseASA9

if not "%ASANY9%" == "" set PATH=%ASANY9%\win32;%PATH%

b. asa-init.bat (這個顯然用於建立ASA的數據庫)

@echo off

call "%~dp0asa-setenv.bat"

echo Initializing Database...

echo %ASANY9%\win32\dbinit.exe %*

"%ASANY9%\win32\dbinit.exe" %*

c. asa-startsvr.bat (以Server模式啟動ASA數據庫)

@echo off

call "%~dp0asa-setenv.bat"

echo Starting Database...

echo %ASANY9%\win32\dbsrv9.exe %*

"%ASANY9%\win32\dbsrv9.exe" %*

d. asa-starteng.bat(以Personal DB的模式啟動ASA數據庫)

@echo off

call "%~dp0asa-setenv.bat"

echo Starting Database...

echo %ASANY9%\win32\dbeng9.exe %*

"%ASANY9%\win32\dbeng9.exe" %*

e. asa-stop.bat (停止數據庫)

@echo off

call "%~dp0asa-setenv.bat"

echo Stopping Database...

echo %ASANY9%\win32\dbstop.exe %*

"%ASANY9%\win32\dbstop.exe" %*

我們來看一個示例:

1.創建一個新的ASA數據庫文件:

D:\shared\ASA902>asa-init eherodemo.db

Initializing Database...

D:\shared\ASA902\win32\dbinit.exe eherodemo.db

Adaptive Server Anywhere Initialization Utility Version 9.0.2.3302

Creating system tables

Collation sequence: 936ZHO

Creating system views

Setting permissions on system tables and views

Setting option values

Initializing UltraLite deployment option

Database "eherodemo.db" created successfully

2.以Server模式啟動eherodemo.db

D:\shared\ASA902>asa-start eherodemo.db

Starting Database...

D:\shared\ASA902\win32\dbsrv9.exe eherodemo.db

ransaction log: eherodemo.log

Starting checkpoint of "eherodemo" (eherodemo.db) at Fri Jul 20 2007 14:20

Finished checkpoint of "eherodemo" (eherodemo.db) at Fri Jul 20 2007 14:20

Database "eherodemo" (eherodemo.db) started at Fri Jul 20 2007 14:20

Database server started at Fri Jul 20 2007 14:20

Trying 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 2638

TCPIP 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 off

setlocal

call "%~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;pw

d=sql" -n eherotest10.db

Unloading Database...

d:\shared\ASA100\..\ASA100\win32\dbunload.exe -c "dbf=d:\shared\asa902\eherotest

.db;uid=dba;pwd=sql" -n eherotest10.db

SQL Anywhere Unload Utility Version 10.0.0.2745

Connecting and initializing

Unloading user and group definitions

Unloading table definitions

Unloading index definitions

Unloading functions

Unloading view definitions

Unloading procedures

Unloading triggers

Unloading SQL Remote definitions

Unloading MobiLink definitions

使用起來非常方便。

最後,我們可以借用Openclient或者ASA安裝時帶有的一個jdbc連接工具來連接數據庫,這叫jutils。大概有1.2M左右。附件放不下。

感覺興趣的可以到郵箱iiihero AT hotmail.com中索取。

我將其打包放到附件裏邊。也非常好用。不僅可以連接ASA,也可以用來連接ASE。

 
 
 
免責聲明:本文為網絡用戶發布,其觀點僅代表作者個人觀點,與本站無關,本站僅提供信息存儲服務。文中陳述內容未經本站證實,其真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,並請自行核實相關內容。
Sybase除了大型商用關系數據庫ASE以外,還有非常有名的嵌入式數據庫,稱為Adaptive Server Anywhere,到了版本10,就改稱為Sql Anywhere。自從Sybase收購mobile365以後,它也越來越受到更多的關註了。 當你安裝完ASA以後,你會發現這個軟件包居然有很大,ASA9大約有170M左右,ASA10的windows版本可以達到240M左右。 實際上,我們經常能用到的東西僅需要其中幾個目錄就可以,將這些目錄提取出來,壓縮以後,就4M左右。本文介紹的內容僅供學習者自己探索,如果商用,請尊重版權。 1. 必要的環境變量 ASA9涉及到的環境變量主要有兩個, set ASANY9=d:\SybaseASA9 set ASANYSH9=d:\SybaseASA9\Shared ASA10涉及到的環境變量主要也是兩個, set SQLANY10=D:\SybaseASA10 set SQLANYSH10=D:\SybaseASA10 註意變量名稱的變化。所謂share目錄主要用於存放jconnect, sybcentral等jdbc驅動、sybcentral GUI客戶端工具等 2.量體裁衣 原始的目錄結構可能是如下的樣子: ce charsets docs drivers h java MobiLink Palm readme.txt Samples scripts Shared snmp support temp ultralite win32 這裏有很多都是不需要的。經過處理,我可以只留下win32和scripts子目錄就可以讓ASA工作。而shared目錄下邊的jdbc驅動完全是獨立的,你完全可以把它抽到別的地方。 在做了這樣的工作以後,現下需要寫一個批處理腳本用於啟動ASA數據庫。 a. asa-setenv.bat (用於設置環境變量) @echo off set ASANY9=D:\SybaseASA9 if not "%ASANY9%" == "" set PATH=%ASANY9%\win32;%PATH% b. asa-init.bat (這個顯然用於建立ASA的數據庫) @echo off call "%~dp0asa-setenv.bat" echo Initializing Database... echo %ASANY9%\win32\dbinit.exe %* "%ASANY9%\win32\dbinit.exe" %* c. asa-startsvr.bat (以Server模式啟動ASA數據庫) @echo off call "%~dp0asa-setenv.bat" echo Starting Database... echo %ASANY9%\win32\dbsrv9.exe %* "%ASANY9%\win32\dbsrv9.exe" %* d. asa-starteng.bat(以Personal DB的模式啟動ASA數據庫) @echo off call "%~dp0asa-setenv.bat" echo Starting Database... echo %ASANY9%\win32\dbeng9.exe %* "%ASANY9%\win32\dbeng9.exe" %* e. asa-stop.bat (停止數據庫) @echo off call "%~dp0asa-setenv.bat" echo Stopping Database... echo %ASANY9%\win32\dbstop.exe %* "%ASANY9%\win32\dbstop.exe" %* 我們來看一個示例: 1.創建一個新的ASA數據庫文件: D:\shared\ASA902>asa-init eherodemo.db Initializing Database... D:\shared\ASA902\win32\dbinit.exe eherodemo.db Adaptive Server Anywhere Initialization Utility Version 9.0.2.3302 Creating system tables Collation sequence: 936ZHO Creating system views Setting permissions on system tables and views Setting option values Initializing UltraLite deployment option Database "eherodemo.db" created successfully 2.以Server模式啟動eherodemo.db D:\shared\ASA902>asa-start eherodemo.db Starting Database... D:\shared\ASA902\win32\dbsrv9.exe eherodemo.db ransaction log: eherodemo.log Starting checkpoint of "eherodemo" (eherodemo.db) at Fri Jul 20 2007 14:20 Finished checkpoint of "eherodemo" (eherodemo.db) at Fri Jul 20 2007 14:20 Database "eherodemo" (eherodemo.db) started at Fri Jul 20 2007 14:20 Database server started at Fri Jul 20 2007 14:20 Trying 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 2638 TCPIP 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 off setlocal call "%~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;pw d=sql" -n eherotest10.db Unloading Database... d:\shared\ASA100\..\ASA100\win32\dbunload.exe -c "dbf=d:\shared\asa902\eherotest .db;uid=dba;pwd=sql" -n eherotest10.db SQL Anywhere Unload Utility Version 10.0.0.2745 Connecting and initializing Unloading user and group definitions Unloading table definitions Unloading index definitions Unloading functions Unloading view definitions Unloading procedures Unloading triggers Unloading SQL Remote definitions Unloading MobiLink definitions 使用起來非常方便。 最後,我們可以借用Openclient或者ASA安裝時帶有的一個jdbc連接工具來連接數據庫,這叫jutils。大概有1.2M左右。附件放不下。 感覺興趣的可以到郵箱iiihero AT hotmail.com中索取。 我將其打包放到附件裏邊。也非常好用。不僅可以連接ASA,也可以用來連接ASE。
2023年上半年GDP全球前十五強
 百态   2023-10-24
美眾議院議長啟動對拜登的彈劾調查
 百态   2023-09-13
上海、濟南、武漢等多地出現不明墜落物
 探索   2023-09-06
印度或要將國名改為「巴拉特」
 百态   2023-09-06
男子為女友送行,買票不登機被捕
 百态   2023-08-20
手機地震預警功能怎麽開?
 干货   2023-08-06
女子4年賣2套房花700多萬做美容:不但沒變美臉,面部還出現變形
 百态   2023-08-04
住戶一樓被水淹 還衝來8頭豬
 百态   2023-07-31
女子體內爬出大量瓜子狀活蟲
 百态   2023-07-25
地球連續35年收到神秘規律性信號,網友:不要回答!
 探索   2023-07-21
全球鎵價格本周大漲27%
 探索   2023-07-09
錢都流向了那些不缺錢的人,苦都留給了能吃苦的人
 探索   2023-07-02
倩女手遊刀客魅者強控制(強混亂強眩暈強睡眠)和對應控制抗性的關系
 百态   2020-08-20
美國5月9日最新疫情:美國確診人數突破131萬
 百态   2020-05-09
荷蘭政府宣布將集體辭職
 干货   2020-04-30
倩女幽魂手遊師徒任務情義春秋猜成語答案逍遙觀:鵬程萬裏
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案神機營:射石飲羽
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案昆侖山:拔刀相助
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案天工閣:鬼斧神工
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案絲路古道:單槍匹馬
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案鎮郊荒野:與虎謀皮
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案鎮郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案鎮郊荒野:指鹿為馬
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案金陵:小鳥依人
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案金陵:千金買鄰
 干货   2019-11-12
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有