DB2物理體系結(jié)構(gòu)講解
1 DB2 物理體系結(jié)構(gòu)
1.1 主要對(duì)象層次關(guān)系
系統(tǒng) –> 實(shí)例 –> 數(shù)據(jù)庫(kù)
對(duì)象 名詞解釋 相互關(guān)系 備注
系統(tǒng)
體系結(jié)構(gòu)中的最高層, DB2產(chǎn)品安裝版本 一個(gè)系統(tǒng)可創(chuàng)建多個(gè)實(shí)例 一臺(tái)機(jī)器上可安裝多個(gè)DB2版本, 即多版本共存;
環(huán)境變量DB2PATH: (db2set –all查看) DB2 數(shù)據(jù)庫(kù)產(chǎn)品安裝目錄
實(shí)例
DB2的獨(dú)立運(yùn)行環(huán)境, 包括一組進(jìn)程/線程、共享內(nèi)存; 數(shù)據(jù)庫(kù)及其對(duì)象和DB2代碼間的聯(lián)系和結(jié)合 一個(gè)實(shí)例可管理多個(gè)數(shù)據(jù)庫(kù), 刪除實(shí)例并不刪除數(shù)
據(jù)庫(kù)(Share Nothing 架構(gòu)), 但一個(gè)數(shù)據(jù)庫(kù)只能屬于一個(gè)實(shí)例 實(shí)例是”邏輯”的,類(lèi)似于”服務(wù)”概念; 實(shí)例間彼此相互獨(dú)立, 互不影響 數(shù)據(jù)庫(kù) 信息的物理存儲(chǔ), 文件集合
數(shù)據(jù)庫(kù)
是”物理”的,數(shù)據(jù)庫(kù)對(duì)象(如:表、索引)占用物理存儲(chǔ)空間
是”物理”的,數(shù)據(jù)庫(kù)對(duì)象(如:表、索引)占用物理存儲(chǔ)空間
注: Share Nothing VS Share Disk
并行架構(gòu) 應(yīng)用架構(gòu) 擴(kuò)展方式 優(yōu)勢(shì) 典型代表
Share Nothing MPP OLAP Scale Up 可擴(kuò)展性 Teradata DB2
Share Disk Cluster OLTP Scale Out 高可用性 (ORACLE RAC Sybase IQ)
1.2 數(shù)據(jù)庫(kù)連接
1.2.1 通信服務(wù)協(xié)議
Type PR Value Remark
Local Connection IPC(進(jìn)程間通信)
Remote Connection TCP/IP DB2COMM 注冊(cè)變量(db2set –all查看)設(shè)置
Remote Connection TCP/IP DB2COMM 注冊(cè)變量(db2set –all查看)設(shè)置
db2set DB2COMM=TCPIP
V9.5 后唯一支持的
通信協(xié)議
1.2.2 通信服務(wù)名稱(chēng)和端口
Num Opt Example
1 獲取TCP/IP 服務(wù)名稱(chēng) 、服務(wù)端口 db2 get dbm cfg | find “svcename” /i db2c_DB2
2 獲取TCP/IP 服務(wù)名稱(chēng) 、服務(wù)端口 若參數(shù)值為svcename, 則需要查詢(xún)TCP/IP services文件,獲取服務(wù)端口
/* Windows */ %systemRoot%\system32\drivers\etc\services
/* Windows */ %systemRoot%\system32\drivers\etc\services
/* Linux / Unix */ /etc/services db2c_DB2 50000/tcp
注: TCP/IP services
文件中尋找對(duì)應(yīng)的
key/value條目
參數(shù)值為port_name 50000 注: 查看服務(wù)器端口狀態(tài) Netstat –ab
參數(shù)值為port_name 50000 注: 查看服務(wù)器端口狀態(tài) Netstat –ab
注: db2 get dbm cfg [service name | port name]; 需重啟實(shí)例生效
1.2.3 編目
遠(yuǎn)程數(shù)據(jù)庫(kù)連接需要先編目節(jié)點(diǎn)(機(jī)器), DB2采用先編目再輸入認(rèn)證信息(用戶(hù)名和密
碼)來(lái)建立數(shù)據(jù)庫(kù)連接。
1、編目(Catalog): 在客戶(hù)端注冊(cè)要訪問(wèn)的節(jié)點(diǎn)(機(jī)器)及其數(shù)據(jù)庫(kù), 先注冊(cè)節(jié)點(diǎn)再注冊(cè)其
上的數(shù)據(jù)庫(kù)。
2、取消編目(UnCatalog): 編目的反操作, 先取消數(shù)據(jù)庫(kù)編目再取消節(jié)點(diǎn)編目。
Opt CATALOG UNCATALOG
(Local Catalog )CATALOG LOCAL NODE <node name> [INSTANCE <instance name>] [SYSTEM <system name>] [OSTYPE <os type>]; LIST NODE DIRECTORY SHOW DETAIL; CATALOG DB <db name> [AS alias] ON <driver>; LIST DB DIRECTORY SHOW DETAIL ON < driver>;
UNCATALOG NODE <node name>;
(Remote Catalog ) CATALOG TCPIP NODE <node name> REMOTE <ip address> SERVER <port> REMOTE_INSTANCE <node name> OSTYPE <NT>;
LIST NODE DIRECTORY SHOW DETAIL;
CATALOG DB <db name> [AS alias] AT NODE <node name>];
LIST DB DIRECTORY SHOW DETAIL UNCATLOG DB <db name>;
注: 編目操作類(lèi)似于Oracle 本地Net 服務(wù)名配置 tnsname.ora, 但操作無(wú)法驗(yàn)證編目
信息是否正確(無(wú)論編目信息是否正確都能注冊(cè)), 只能通過(guò)輸入認(rèn)證信息建立數(shù)據(jù)庫(kù)連
接才能測(cè)試是否注冊(cè)成功。
1.3 實(shí)例管理
1.3.1 實(shí)例目錄
默認(rèn)DB2INSTPROF(db2set –all查看) 注冊(cè)變量路徑, 實(shí)例目錄下的主要文件及目錄:
1、$HOME\SQLDBDIR:數(shù)據(jù)庫(kù)編目,使用db2 list db directory 查看
2、$HOME\SQLNODIR:節(jié)點(diǎn)編目,使用db2 list node directory 查看
3、db2nods.cfg:節(jié)點(diǎn)配置文件
4、診斷文件db2diag.log、數(shù)據(jù)庫(kù)錯(cuò)誤日志、安全配置等信息
4、診斷文件db2diag.log、數(shù)據(jù)庫(kù)錯(cuò)誤日志、安全配置等信息
1.3.2 實(shí)例配置
對(duì)實(shí)例目錄下二進(jìn)制數(shù)據(jù)庫(kù)管理配置文件db2systm進(jìn)行查看、更改和重置。
Opt Windows Remark
List db2 get dbm cfg 數(shù)據(jù)庫(kù)管理配置文件: $INSTANCE_HOME\ db2systm
Update db2 update dbm cfg using <param name> <param value> 絕大部分實(shí)例參數(shù)更改需要重啟實(shí)例生效
db2 update dbm cfg using <param name> NULL 設(shè)置參數(shù)為空
Reset db2 reset dbm cfg 配置參數(shù)復(fù)位(初始化為默認(rèn)值)
1.3.3 實(shí)例操作
Opt Windows Remark Create
db2icrt <instance name> -p <InstProfPath> -p: 實(shí)例目錄路徑, 若省略則默認(rèn) DB2INSTPROF(db2set –all查看) 注冊(cè)變量路徑
List /* 查看當(dāng)前實(shí)例 */ db2 get instance /* 查看所有可用實(shí)例 */ db2ilist 可采用DB2INSTANCE操作系統(tǒng)環(huán)境變量查看: echo %db2instance% (Windwos)
List /* 查看當(dāng)前實(shí)例 */ db2 get instance /* 查看所有可用實(shí)例 */ db2ilist 可采用DB2INSTANCE操作系統(tǒng)環(huán)境變量查看: echo %db2instance% (Windwos)
echo $db2instance (Linux/Unix)
Set set db2instance=<instance name> set db2instance 1、 DB2INSTANCE操作系統(tǒng)環(huán)境變量,類(lèi)似于ORACLE中的ORACLE_SID, 用于實(shí)例切換 2、 “=” 左右絕對(duì)不能包含空格
Start db2 db2start win7環(huán)境中啟停、刪除、更新等操作會(huì)遇DB21009E錯(cuò)誤,需要”管理員權(quán)限”才能啟動(dòng)此命令;
解決方法:應(yīng)用db2cmdAdmin進(jìn)入db2CLP
Stop db2 force application all db2 db2stop [force]
解決方法:應(yīng)用db2cmdAdmin進(jìn)入db2CLP
Stop db2 force application all db2 db2stop [force]
Upgrade db2 force application all; db2 db2stop [force];
db2iupdt <instance name> -p < InstProfPath>;
1、 更新前需停止該實(shí)例上運(yùn)行的所有進(jìn)
程
2、 更新前需先停止實(shí)例
3、 -p: 更新實(shí)例目錄路徑
4、 適用于數(shù)據(jù)庫(kù)小版本升級(jí)
Drop db2 force application all; 1、 刪除前需停止該實(shí)例上運(yùn)行的所有進(jìn)程
db2 db2stop [force];
db2idrop <instance name>;
2、 刪除前需先停止實(shí)例
3、 刪除實(shí)例并完全刪除實(shí)例目錄(還包含
db2diag.log等文件), 需手工處理
Attach db2 attach to <instance name> 連接到遠(yuǎn)程實(shí)例
Detach db2 detach 斷開(kāi)遠(yuǎn)程實(shí)例連接
1.4 管理服務(wù)器DAS
DAS (Database Administration Server) 配合DB2圖形界面完成對(duì)遠(yuǎn)程數(shù)據(jù)庫(kù)的操作,
一個(gè)系統(tǒng)下僅能有一個(gè)DAS, 所有DB2副本都使用1個(gè)DAS, 同時(shí)管理多個(gè)實(shí)例。
1.4.1 管理服務(wù)器配置
Opt Windows Remark
List db2 get admin cfg 數(shù)據(jù)庫(kù)管理配置文件: $INSTANCE_HOME\ db2systm
Update db2 update admin cfg using <param name> <param value> 某些情況下管理器配置參數(shù)更改需要重啟管理服務(wù)器生效
db2 update admin cfg using <param name> NULL 設(shè)置參數(shù)為空
Reset db2 reset admin cfg 配置參數(shù)復(fù)位(初始化為默認(rèn)值)
1.4.2 管理服務(wù)器操作
Opt Unix(Linux) Windows Remark
List dasilist db2admin
win7 環(huán)境中, 啟停、刪除等操作會(huì)遇
DB21009E錯(cuò)誤,需要”管理員權(quán)限”才能啟
動(dòng)此命令; 解決方法:應(yīng)用db2cmdadmin
進(jìn)入db2CLP
Start db2admin start
Stop db2admin stop
Create dasicrt db2admin create
Drop dasidrp db2admin drop
備注: 由于DB2 V9.7 后, db2cc(控制中心) \ db2tc(任務(wù)中心) 等圖形界面逐漸被IBM
Data Studio \ IBM Optim 所取代, 建議在不使用圖形界面操作時(shí)候關(guān)閉此服務(wù)。
posted on 2014-01-29 00:21 順其自然EVO 閱讀(1553) 評(píng)論(0) 編輯 收藏 所屬分類(lèi): db2