1. 程式人生 > >[IQ學習1] SAP Sybase IQ15.1的demo資料庫建立及啟動

[IQ學習1] SAP Sybase IQ15.1的demo資料庫建立及啟動

網上一直有朋友勸我寫一篇關於IQ的入門的相關內容。IQ相對於ASE以及ASA而言,資料相對少一些。

1. 安裝

有一篇實作的帖子:http://www.itpub.net/thread-1345562-1-1.html 寫得還是蠻不錯的。

我本機是64位Win7,安裝的是iq1510_product_winx86 for x64,可能是因為我的機器已經安裝了: vcruntime_2005, 2008的緣故,所以,一路安裝起來,並沒有報錯。

那篇帖子的作者用的是1520, 按道理,系統會自動為他安裝這些runtime的,安裝包裡頭就有相應的分發包。

請看目錄:
iq1510_product_winx86_32\ms-redist-2008
iq1510_product_winx86_32\ms-redist-2005

安裝包其實也不大,總共才300來兆。我裝的是試用版,最長能用30天。

2. 關於Demo資料庫

IQ的文件,如果不仔細閱讀,確實讓人費解。 其實,IQ的很多用法與ASA相似,兩者的文件不妨串讀。
那樣也許就容易一些。

安裝完以後,我們會看從選單裡Sybase -> IQ 15.1 --> Start IQ demo資料庫,為大家啟動Demo資料庫。

本文主要就是介紹這個demo資料庫如何建立並啟動的。

我們只要右鍵編輯這個快捷方式,就可以看到它的內容:

echo.
if exist iqdemo.db if exist iqdemo.cfg if exist iqdemo.iq if exist iqdemo.iqtmp ( 
	start_iq "@iqdemo.cfg" "iqdemo.db"
	goto :EOF
)

set /p response="Demo database needs to be created. Create now? Y/N: "
if not {%response%}=={Y} (
	if not {%response%}=={y} ( goto :EOF ))

echo.
echo Current Directory is: %CD%
echo.

"%ComSpec%" /C "%ALLUSERSPROFILE%\SybaseIQ\demo\mkiqdemo.bat" -y

if exist iqdemo.db if exist iqdemo.cfg if exist iqdemo.iq if exist iqdemo.iqtmp ( 
	start_iq "@iqdemo.cfg" "iqdemo.db"
)

基本邏輯就是,如果已經建立了iqdemo.db,就試圖啟動它。如果沒有,則呼叫\programdata\SybaseIQ\demo\mkiqdemo.bat來建立這個資料庫。看來最核心的操作都在批處理檔案:mkiqdemo.bat裡頭了。 


我們再把mkiqdemo.bat開啟,看看裡邊都有什麼?

(
echo	# %DEMO_NAME%.cfg 						
echo	# ------------------------------------------------------------	
echo	# Default startup parameters for the ASIQ demo database 	
echo	# ------------------------------------------------------------ 	
echo. 									
echo	-n  %OS_NAME%_%DEMO_NAME%	 					
echo	-x  tcpip{port=2638}						
echo.									
echo	# The following parameters are also found in the configuration file 
echo	# %IQDIR15%\scripts\default.cfg.  Any parameters not specified below 
echo	# and not in the start up parameter list, will be added by start_iq 
echo	# using default.cfg as a guide.					
echo.									
echo	-c  48m								
echo	-gc 20								
echo	-gd all								
echo	-gl all								
echo	-gm 10 								
echo	-gp 4096 							
echo.
echo	-iqmc 32 								
echo	-iqtc 24 							
echo.
)	> %DEMO_NAME%.cfg



建立資料庫啟動的檔案。

有下邊這麼一行來執行mkiqdemo.sql

echo.
echo.Starting Server ...

start_iq "@%SVR_NAME%.cfg"

if not %errorlevel%==0 (
	echo ERROR: Starting of server failed
	goto :end_batch_cleanup
	)

echo.
echo.Connecting to server via %CONN_TYPE% ...
echo.Using: %CONN_UTIL%

dbisqlc %INP_VERBOSE% -c %CONN_UTIL% %SVR_NAME%.sql

if not %errorlevel%==0 (
	echo Creation of database failed
	goto :end_batch_cleanup
	)

echo.
echo.Creation completed.
echo.

這裡邊就已經包含了啟動資料庫服務並在SQL腳本里建立資料庫的動作了。看看sql腳本里頭:

// CONNECT_UTIL_STRING

;

CREATE DATABASE 'iqdemo.db'
   BLANK PADDING ON
   DBA PASSWORD 'sql'
   CASE IGNORE
   IQ PATH 'iqdemo.iq'    // RELATIVE SYS_SPACE
   IQ SIZE 25 		  // For 15.0 release demo has 25/75 partition
   IQ RESERVE 200      
   IQ PAGE SIZE 131072;   // Block Size for 12.5 and up is 128k
   // JAVA ON 
   // JCONNECT ON 

// CONNECT_ASIQ_STRING
;

// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//   Create a dbspace for users objects
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

CREATE DBSPACE iq_main 
	USING FILE iq_main
	'iqdemo_main.iq' // RELATIVE USER_SPACE
	SIZE 75 
	RESERVE 200 ;

這幾條SQL語句就是建立資料庫及表空間的動作了。

其實,我們將C:\ProgramData\SybaseIQ\demo目錄完整備份出來,每次都可以進到demo目錄下邊,執行run_mkiqdemo.bat,來建立並執行iqdemo資料庫了。


我們再來看看demo資料庫的啟動引數含義:

IQ full cmd line: -n sean-t60_iqdemo -x tcpip{port=2638} -c 48m -gc 20 -gd all -gl all -gm 10 -gp 4096 -iqmc 32 -iqtc 24 iqdemo.db -ti 4400 -gn 25 -o C:\ProgramData\SybaseIQ\logfiles\sean-t60_iqdemo.003.srvlog -hn0,9864:204

1) -n sean_t60_iqdemo 這與ASA裡頭一樣,指定的是ENG 名稱, 即server name

2) -x , TCPIP引數,這裡指定了埠號 2638

3) -c 48m, cache大小為48M
4) -gc 20檢查點時間間隔, 20分鐘來一次checkpoint

5) -gd all 允許所有使用者通過連線啟動資料庫

6) -gm 10預設最大連線數
7) -gp 4096 最大儲存頁的大小
8) -iqmc 主快取記憶體大小
9) -iqtc 臨時快取記憶體大小
10) -ti 4400 (4400分鐘), 斷開空閒連線的時間(73個小時?:)
11)  -gn 25 , 工作執行緒數

12) -o 輸出的訊息日誌
13) -hn0, 9864:204

這些引數對於初學者來說 ,確實是一個“負擔”。

下邊就是建立並啟動的過程:

c:\ProgramData\SybaseIQ\demo>run_mkiqdemo.bat

Demo database needs to be created. Create now? Y/N: Y

Current Directory is: c:\ProgramData\SybaseIQ\demo


This script creates the iqdemo database in the current
directory: c:\ProgramData\SybaseIQ\demo

Continue <Y/N>? Y


Setting up temporary files ...

Starting Server ...

Connecting to server via TCPIP ...
Using: uid=DBA;pwd=sql;eng=bld_demo_9707;dbn=utility_db;links=tcpip{host=sean-t60;port=9707}

Creation completed.

Shutting down server ...
SQL Anywhere Stop Server Utility Version 11.0.1.5027

 驅動器 C 中的卷沒有標籤。
 卷的序列號是 C4ED-378A

 c:\ProgramData\SybaseIQ\demo 的目錄

2013-11-30  12:10               701 iqdemo.cfg
2013-11-30  12:10         2,908,160 iqdemo.db
2013-11-30  12:10        26,214,400 iqdemo.iq
2013-11-30  12:10            43,681 iqdemo.iqmsg
2013-11-30  12:10        13,107,200 iqdemo.iqtmp
2013-11-30  12:10               194 iqdemo.lmp
2013-11-30  12:10           327,680 iqdemo.log
2013-11-30  12:10        78,643,200 iqdemo_main.iq
               8 個檔案    121,245,216 位元組
               0 個目錄 34,826,956,800 可用位元組

Demo database created succesfully

3. 檢測試用demo資料庫:

直接使用Sybase Central for IQ就可以連線上demo資料庫,埠用2638, 使用者:dba, 密碼sql 或者選擇ODBC資料來源:Sybase IQ Demo也可以,連線如下圖所示:
只是示例中的資料量並不大:

相關推薦

[IQ學習1] SAP Sybase IQ15.1的demo資料庫建立啟動

網上一直有朋友勸我寫一篇關於IQ的入門的相關內容。IQ相對於ASE以及ASA而言,資料相對少一些。1. 安裝有一篇實作的帖子:http://www.itpub.net/thread-1345562-1-1.html 寫得還是蠻不錯的。我本機是64位Win7,安裝的是iq151

redis學習1--初識redis,redis的安裝,啟動。。。

redis 3.0 啟動 一個 工作 持久 集群 端口號 daemonize Linux 環境下 下載redis wget http://download.redis.io/releases/redis-3.0.7.tar.gz 解壓 tar -zxvf redis-3.0

OPhone/Android的學習 1 —初步知識,TextView Button Layout事件響應

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

LIVE555學習1:Linux下live555的編譯測試

以下為在linux下編譯和測試live555的全部過程。 文章目錄 1 原始碼下載 2 編譯 3 測試 1 原始碼下載 官網地址:http://www.live555.com/liveMedia/public/ 開啟後,選擇li

DSP 基礎學習 1:搭建環境與CCS6建立工程模板

DSP 基礎學習 1:搭建環境與CCS6建立工程模板 1 DSP簡介 1.1 DSP 發展 1.2 DSP 應用領域 1.3 DSP 產品現狀 1.4 哈佛結構 1.5 TMS320F28335 簡介 2 搭

JSP中的資料庫操作(1):MySQL資料庫建立管理

本文目錄順序: 安裝MySQL MySQL管理軟體SQLYog Enterprise --30天試用期到期解決方法 使用SQLYog Enterprise建立資料庫 MySQL的各項引數 1. 安裝MySQL 在www.mysql.com下載並且安裝。安裝的時候配置使用者

android sqlite 資料庫建立增刪改查的操作實現

在android 開發工程中,我們經常會把資料儲存到本地資料庫,然後進行增刪該查的操作,為了提高工作效率,近期我有空的時候稍微整理了一下,下面分享下 第一步首先定義下表中的列名,我們要建一個類 implements BaseColumns ,下面給出原始碼 /** *

oracle資料庫建立刪除表空間、使用者和增刪改查

資料庫 檢視sql資料庫中的所有表空間 select * from dba_data_files; 刪除表空間 SQL> drop tablespace db_data including contents and datafiles;

多執行緒(1)——多執行緒的建立啟動

執行緒的建立 執行緒的建立主要要3種方法。 1. 繼承Thread類 package cn.zengzehao.thread; public class FirstThread {

Meteor學習路程(三)之資料庫的例子(1)【查詢】

接下來會用Meteor的幾種方式展示出資料: 第一步:命令列新建工程 meteor create dbTest ....... cd dbTest ....... meteor npm install ....... meteor第二步: 第一種方式:模擬資料 在clien

SAP 增強學習(1):一代增強 USER EXIT

程式:MV45AFZZ 下面以建立銷售訂單(VA01)內的一代增強為例,當選擇某些指定的銷售訂單的型別時,PO NUMBER變成必輸項。。 介紹 SAP的一代增強我稱之為USER EXIT(使用者出口),從字面上也很好理解,就是SAP在標準的程式中有預留了一些給使用者

SYBASE IQ 學習記錄

現在專案組使用的資料庫是Sybase,之前都是用Oralce的,在熟悉Sybase時發現Sybase的資料還是很少的(尤其網上資料),摸索很長時間後才慢慢適應過來,閒餘之時,總結了下Sybase IQ的使用心得,由於之前用的的Oralce,所以有的差異也是和Oralce作的比

derby學習——1. 查詢資料庫表資訊

1. 查詢資料庫名SELECT t.TABLENAME FROM SYS.SYSTABLES t, SYS.SYSSCHEMAS s WHERE s.SCHEMANAME = 'ADMIN' AND s.SCHEMAID = t.SCHEMAIDADMIN是資料庫使用的SCH

資料庫學習——1.基礎知識

宣告:本文為個人學習心得體會,部分內容非原創。 一、認識資料庫 1.資料管理技術的發展 1.1資料庫的基本概念 (1)資料(Data) 資料就是對客觀事物反映的一種物理符號,可以是數字、文字、圖形、影象、聲音、語言和視訊等。這些多種

dubbo學習(1)--簡單的入門搭建實例

實現類 set ng- dds 更新 輸出 block sys 註冊 轉載請註明源文出處:http://www.cnblogs.com/lighten/p/6828026.html 1 簡介 dubbo是一個分布式服務框架,由阿裏巴巴的工程師開發,致力於提供

Java學習(三)JSP學習1

rtm 斷開 三大指令 保持 web應用 對比 c語言 let 新建 一、 理解JSP技術   JSP全名為Java Server Pages,中文名叫java服務器頁面,其根本是一個簡化的Servlet設計,它 是由Sun Microsystems公司倡導、許多公司參

Python Tkinter學習(1)——第一個Tkinter程序

這一 tkinter courier 訪問 elf creat int 學習 開始 註:本文可轉載,轉載請註明出處:http://www.cnblogs.com/collectionne/p/6885066.html。 Tkinter介紹 Python支持多個圖形庫

C#學習1

可視化編程 最新 可視化 XML 結構 類庫 net 整體 asp C#主要有"安德斯~海爾斯伯"格主持開發,最新版本為5.0, .NET框架為.NET Framework4.5 Visual C#.NET特點:可視化編程、面向對象、事件驅動、支持數據庫編程、web編程 .

servlet學習(1)

sun公司 troy clas dream 簡單 har pack res generics 1.Servlet是sun公司提供的一門用於開發動態web資源的技術。 2.Servlet在web應用的位置: 3.創建Servlet的三種方式: (1)實現

大數據平臺學習-1

div hadoop nutch 基本 映射 數據分布 數據 ast 計算引擎 數據平臺架構圖 HDFS:Hadoop分布式文件系統(HDFS)被設計成適合運行在通用硬件(commodity hardware)上的分布式文件系統。它和現有的分布式文件系統有很多共同點。但同