DB2是IBM一種分布式數據庫解決方案。說簡單點:DB2就是IBM開發的一種大型關系型數據庫平台.它支持多用戶或應用程序在同一條SQL 語句中查詢不同database甚至不同DBMS中的數據。目前,DB2有如下一些版本:(比如DB2 for Unix,DB2 for Windows,DB2 for AS/400,DB2 for OS/390等)
DB2是IBM公司開發的關系數據庫管理系統,它有多種不同的版本,如:DB2工作組版(DB2Workgroup Edition)、DB2企業版(DB2 Enterprise Edition)、DB2個人版(DB2 Personal Edition)和DB2企業擴展版(DB2 Enterprise-Exended Edition)等,這些產品基本的數據管理功能是一樣的,區別在於支持遠程客戶能力和分布式處理能力。
個人版適用於單機使用,即服務器只能由本地應用程序訪問。工作組版和企業版提供了本地和遠程客戶訪問DB2的功能(當然遠程客戶要安裝相應客戶應用程序開發部件),企業版包括工作組版中的所有部件外再增加對主機連接的支持。企業擴展版允許將一個大的數據庫分布到同一類型的多個不同計算機上,這種分布式功能尤其適用於大型數據庫的處理。
DB2可運行在OS/2、Windows NT、UNIX操作系統上,通常將運行在這些平台上的DB2產品統稱為DB2通用數據庫,這主要是強調這些產品運行環境類似,並共享相同的源代碼。DB2通用數據庫主要組件包括數據庫引擎(Dalabase Engine )應用程序接口和一組工具。數據庫引擎提供了關系數據庫管理系統的基本功能,如管理數據、控制數據的訪問(包括並發控制)、保證數據完整性及數據安全。所有數據訪問都通過SQL接口進行。
db2起源於system r和system r*。他支持從pc到unix,從中小型機到大型機;從ibm到非ibm(hp及sun unix系統等)各種操作平台。他既可以在主機上以主/從方式獨立運行,也可以在客戶/服務器環境中運行。其中服務
平台可以是os/400,aix,os/2,hp-unix,sun-solaris等操作系統,客戶機平台可以是os/2或windows, dos, aix, hp-ux, sun solaris等操作系統。
一、db2核心數據庫的特色
db2數據庫核心又稱作db2公共服務器,采用多進程多線索體系結構,可以運行於多種操作系統之上,並分別根據相應平台環境作了調整和優化,以便能夠達到較好的性能。
(1) 支持面向對象的編程
db2支持復雜的數據結構,如無結構文本對象,可以對無結構文本對象進行布爾匹配、最接近匹配和任意匹配等搜索。可以建立用戶數據類型和用戶自定義函數。
(2) 支持多媒體應用程序
db2支持大二分對象(blob),允許在數據庫中存取二進制大對象和文本大對象。其中,二進制大對象可以用來存儲多媒體對象。
(3) 備份和恢復能力
(4) 支持存儲過程和觸發器,用戶可以在建表時顯示的定義復雜的完整性規則
(5) 支持的硅sql查詢
(6) 支持異構分布式數據庫訪問
(7) 支持數據復制
二、開發工具
ibm提供了許多開發工具,主要有visualizer query, visualage, visualgen。
visualizer是客戶/服務器環境中的集成工具軟件,主要包括visualizer query可視化查詢工具,visualizer ultimedia query可視化多媒體查詢工具,visualizer chart可視化圖標工具,visualizer procedure可視化過程工具,visualizer statistics可視化統計工具,visualizer plans可視化規劃工具, visualizer development可視化開發工具。
visualage是一個功能很強的可視化的面向對象的應用開發工具,可翼大幅度的提高軟件開發效率。其主要特征有:
(1) 可視化程序設計工具。
(2) 部件庫。包括支持圖形用戶接口的預制不見,以及包含數據庫查詢、事務和本地、遠程函數的通用部件。
(3) 關系數據庫支持。
(4) 群體程序設計。
(5) 支持增強的動態連接庫。
(6) 支持多媒體。
(7) 支持數據共享。
visualgen是ibm所提供的高效開發方案中的重要組成部分。它集成了第四代語言、客戶/服務器與面向對象技術,給用戶提供了一個完整、高效的開發環境。
三、DB2數據庫的安裝
這是在IBM RS6000 操作系統為AIX安裝的,HP9000上雷同
1. 注冊為具有超級用戶權限的用戶(root)
2. 將 標有“DB2通用數據庫企業版”的軟件光盤插入驅動器
3. 輸入如下命令,以創建一個目錄來安裝該 CD-ROM:
# mkdir -p /cdrom 其中 cdrom 表示 CD-ROM 安裝目錄。
輸入如下命令,來分配 CD-ROM 文件系統:
# smitty storage
4. 選擇文件系統
5. 選擇添加/更改/顯示/刪除文件系統
6. 選擇 CDROM 文件系統
7. 選擇添加 CDROM 文件系統
8. 在彈出窗口中,輸入如下項作為安裝點:
/cdrom
9. 通過輸入以下命令來安裝 CD-ROM 文件系統: smit mountf
10. 在文件系統名稱字段中輸入值。例如,該名稱可能是 /dev/cd0。
11. 在安裝目錄字段中輸入值。例如,此值可能是 /cdrom。
12. 將安裝為只讀系統設置為 Yes。
13. 單擊確定。
14. cd /cdrom
15. 輸入 ./db2setup 命令以啟動 DB2 安裝程序。 安裝 DB2 V6 窗口打開。
16. 按 Tab 鍵更改突出顯示的選項,按 Enter 鍵選擇或取消選擇選項。
(1) 在服務器上安裝,一般選擇安裝以下三個產品:
注意:要顯示想要安裝的 DB2 產品的部件,選擇定制。要在任何時候返回至先前窗口,選擇取消。
DB2 Administration Client
選擇定制安裝這個產品,
DB2 UDB enterprise edition
選擇定制安裝這個產品,
DB2 Software Developer Kit
如果同時做開發,需要定制安裝此產品。
(2) 在“DB2產品信息”和“DB2產品庫”只選擇中國語言ZH_CN支持。
17. 在16步確認後,將開始安裝數據庫程序。在安裝過程中,還需確認以下問題:
(1) 是否建立DB2管理帳戶, 一般選擇建立:
按缺省建立db2管理用戶db2as(使用缺省的UID,Group Id,安裝home路徑),在語言支持上,
只選擇中國語言ZH_CN支持。
(2) 是否建立DB2的實例, 一般選擇建立:
按缺省建立db2管理用戶db2inst1:db2iadm1(使用缺省的UID,Group Id,安裝home路徑),
在語言支持上,只選擇中國語言ZH_CN支持。
按缺省建立db2用戶db2fenc1:db2fenc1(使用缺省的UID,Group Id,安裝home路徑),
在語言支持上,只選擇中國語言ZH_CN支持。
是否建立sample數據庫(為了檢查數據庫的安裝是否正確,一般選擇建立sample數據庫)
是否選擇DB2的實例進程在操作系統啟動時,自動執行初始化
如果在獨立服務器上安裝使用,可選擇autostart,但在aix+hacmp+db2的雙機共享環境中,不要選擇
autostart,DB2實例進程的啟動,由hacmp來控制。
18. 安裝結果:
數據庫程序安裝完成後,DB2的軟件程序安裝在/usr/lpp目錄中,
DB2DIR = /usr/lpp/DB2_06_01
注意:如果安裝過程中沒有指定建立實例和管理帳戶,在安裝完成後可以使用命令創建實例(db2icrt)。
或者要創建或添加新的實例、“管理服務器”或其他 DB2 產品和部件,輸入如下命令:
/usr/lpp/DB2_06_01/install/DB2setup
19. 驗證安裝
在安裝時若沒有選擇建立sample數據庫,在安裝完成後可以通過命令(db2sampl)創建 SAMPLE 數據庫,
並通過使用命令行處理器與該數據庫相連來驗證安裝:
(1) 作為具有系統管理 (SYSADM) 權限的用戶向系統注冊。如:db2inst1
(2) 輸入 DB2sampl 命令以便創建 SAMPLE 數據庫。
(3) 創建 SAMPLE 數據庫時,用數據庫別名 SAMPLE 將它自動編目。
(4) 輸入 DB2start 命令以啟動數據庫管理程序。
(5) 輸入下列命令來與 SAMPLE 數據庫相連,檢索在部門 20 中工作的所有雇員的列表,並重設數據庫連接:
DB2 connect to sample
DB2 "select * from staff where dept = 20"
DB2 connect reset
注意:在驗證安裝後,可除去 SAMPLE 數據庫以釋放磁盤空間。輸入 DB2 drop database sample 命令
來卸下 SAMPLE 數據庫。
若尚未未安裝 DB2 工具,則您可以通過創建 SAMPLE 數據庫, 並通過使用命令行處理器與該數據庫
相連來驗證安裝,如下所示:
步驟 1.
作為具有系統管理 (SYSADM) 權限的用戶向系統注冊。
步驟 2.
輸入 db2sampl 命令以便創建 SAMPLE 數據庫。
創建 SAMPLE 數據庫時, 用數據庫別名 SAMPLE 將它自動編目。
步驟 3.
輸入 db2start 命令以啟動數據庫管理程序。
步驟 4.
輸入下列命令來與 SAMPLE 數據庫相連, 檢索在部門 20 中工作的所有雇員的列表,並重設數據庫連接:
db2 connect to sample
db2 "select * from staff where dept = 20"
db2 connect reset
如以上命令均正確執行, 則證明DB2 UDB 數據庫服務器的安裝已經成功完成.
四、DB2數據庫的備份和恢復
最近,我恢復了一個數據庫.其中的辛苦不予言表,我想寫出自己用到的一些語句,和遇到相