qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          DB2物理體系結構講解

          1  DB2 物理體系結構
          1.1  主要對象層次關系 
          系統  –> 實例  –> 數據庫 
          對象  名詞解釋  相互關系  備注 
          系統 
          體系結構中的最高層,  DB2產品安裝版本 一個系統可創建多個實例 一臺機器上可安裝多個DB2版本,  即多版本共存; 
          環境變量DB2PATH: (db2set –all查看)  DB2 數據庫產品安裝目錄 
          實例 
          DB2的獨立運行環境,  包括一組進程/線程、共享內存;  數據庫及其對象和DB2代碼間的聯系和結合 一個實例可管理多個數據庫,  刪除實例并不刪除數
          據庫(Share  Nothing 架構), 但一個數據庫只能屬于一個實例 實例是”邏輯”的,類似于”服務”概念; 實例間彼此相互獨立, 互不影響 數據庫  信息的物理存儲,  文件集合   
          數據庫
          是”物理”的,數據庫對象(如:表、索引)占用物理存儲空間 
          注: Share Nothing VS Share Disk 

          并行架構  應用架構  擴展方式  優勢  典型代表 
          Share Nothing  MPP  OLAP  Scale Up  可擴展性 Teradata  DB2 
          Share Disk  Cluster  OLTP  Scale Out  高可用性 (ORACLE RAC   Sybase IQ)
          1.2  數據庫連接 
          1.2.1  通信服務協議 
          Type  PR  Value  Remark 
          Local Connection IPC(進程間通信)    
          Remote Connection TCP/IP DB2COMM 注冊變量(db2set –all查看)設置 
           
          db2set DB2COMM=TCPIP 
          V9.5 后唯一支持的
          通信協議 
          1.2.2  通信服務名稱和端口 
          Num  Opt    Example 
          1 獲取TCP/IP 服務名稱 、服務端口 db2 get dbm cfg | find “svcename” /i db2c_DB2 
          2  獲取TCP/IP 服務名稱 、服務端口 若參數值為svcename, 則需要查詢TCP/IP  services文件,獲取服務端口
          /* Windows */ %systemRoot%\system32\drivers\etc\services  
           /* Linux / Unix  */ /etc/services db2c_DB2 50000/tcp  
           注: TCP/IP services
          文件中尋找對應的
          key/value條目
          參數值為port_name 50000 注:  查看服務器端口狀態  Netstat –ab  
          注: db2 get dbm cfg [service name | port name];  需重啟實例生效 
          1.2.3  編目 
          遠程數據庫連接需要先編目節點(機器),  DB2采用先編目再輸入認證信息(用戶名和密
          碼)來建立數據庫連接。

          1、編目(Catalog): 在客戶端注冊要訪問的節點(機器)及其數據庫, 先注冊節點再注冊其
          上的數據庫。 
          2、取消編目(UnCatalog): 編目的反操作, 先取消數據庫編目再取消節點編目。 

          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>;
          注: 編目操作類似于Oracle 本地Net 服務名配置 tnsname.ora,  但操作無法驗證編目
          信息是否正確(無論編目信息是否正確都能注冊), 只能通過輸入認證信息建立數據庫連
          接才能測試是否注冊成功。

          1.3  實例管理 
          1.3.1  實例目錄 
          默認DB2INSTPROF(db2set –all查看) 注冊變量路徑,  實例目錄下的主要文件及目錄: 
          1、$HOME\SQLDBDIR:數據庫編目,使用db2 list db directory 查看 
          2、$HOME\SQLNODIR:節點編目,使用db2 list node directory 查看 
          3、db2nods.cfg:節點配置文件 
          4、診斷文件db2diag.log、數據庫錯誤日志、安全配置等信息 
          1.3.2  實例配置 
          對實例目錄下二進制數據庫管理配置文件db2systm進行查看、更改和重置。 
          Opt  Windows  Remark 
          List   db2 get dbm cfg  數據庫管理配置文件: $INSTANCE_HOME\  db2systm 
          Update db2 update dbm cfg using  <param name> <param value> 絕大部分實例參數更改需要重啟實例生效 
          db2 update dbm cfg using  <param name> NULL 設置參數為空 
          Reset  db2 reset dbm cfg   配置參數復位(初始化為默認值) 

          1.3.3  實例操作 
          Opt  Windows   Remark Create  
          db2icrt <instance name>   -p <InstProfPath> -p: 實例目錄路徑,  若省略則默認 DB2INSTPROF(db2set –all查看) 注冊變量路徑
          List /* 查看當前實例  */ db2 get instance  /* 查看所有可用實例  */ db2ilist 可采用DB2INSTANCE操作系統環境變量查看: echo %db2instance% (Windwos) 
          echo $db2instance (Linux/Unix) 
          Set set db2instance=<instance name> set db2instance 1、 DB2INSTANCE操作系統環境變量,類似于ORACLE中的ORACLE_SID, 用于實例切換 2、 “=”  左右絕對不能包含空格 
          Start  db2 db2start   win7環境中啟停、刪除、更新等操作會遇DB21009E錯誤,需要”管理員權限”才能啟動此命令;
           解決方法:應用db2cmdAdmin進入db2CLP
          Stop db2 force application all  db2 db2stop [force] 
          Upgrade db2 force application all;  db2 db2stop [force]; 
           db2iupdt <instance name> -p < InstProfPath>; 
          1、 更新前需停止該實例上運行的所有進
          程 
          2、 更新前需先停止實例 
          3、 -p: 更新實例目錄路徑 
          4、 適用于數據庫小版本升級 
          Drop  db2 force application all;  1、 刪除前需停止該實例上運行的所有進程
          db2 db2stop [force]; 
           
          db2idrop <instance name>; 
          2、 刪除前需先停止實例 
          3、 刪除實例并完全刪除實例目錄(還包含
          db2diag.log等文件), 需手工處理 
          Attach  db2 attach to <instance name>  連接到遠程實例 
          Detach  db2 detach  斷開遠程實例連接 
           1.4  管理服務器DAS 
          DAS  (Database  Administration  Server) 配合DB2圖形界面完成對遠程數據庫的操作, 
          一個系統下僅能有一個DAS, 所有DB2副本都使用1個DAS, 同時管理多個實例。  
          1.4.1  管理服務器配置 
          Opt  Windows  Remark 
          List   db2 get admin cfg  數據庫管理配置文件: $INSTANCE_HOME\  db2systm 
          Update db2 update admin cfg using  <param name> <param value> 某些情況下管理器配置參數更改需要重啟管理服務器生效 
          db2 update admin cfg using  <param name> NULL 設置參數為空 
          Reset  db2 reset admin cfg   配置參數復位(初始化為默認值)
          1.4.2  管理服務器操作 
          Opt  Unix(Linux)  Windows  Remark 
          List  dasilist      db2admin 
          win7 環境中, 啟停、刪除等操作會遇
          DB21009E錯誤,需要”管理員權限”才能啟
          動此命令;  解決方法:應用db2cmdadmin
          進入db2CLP  
          Start    db2admin start 
          Stop    db2admin stop 
          Create  dasicrt  db2admin create 
          Drop  dasidrp  db2admin drop 
           
          備注: 由于DB2  V9.7 后,  db2cc(控制中心) \ db2tc(任務中心) 等圖形界面逐漸被IBM 
          Data Studio \ IBM  Optim  所取代, 建議在不使用圖形界面操作時候關閉此服務。

          posted on 2014-01-29 00:21 順其自然EVO 閱讀(1550) 評論(0)  編輯  收藏 所屬分類: db2

          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 九龙坡区| 昭觉县| 徐汇区| 吉林省| 林口县| 洛宁县| 汝阳县| 忻城县| 河南省| 垦利县| 常州市| 壶关县| 衡南县| 寿光市| 兴隆县| 琼结县| 黄山市| 龙陵县| 鄂托克前旗| 福贡县| 安福县| 莎车县| 濉溪县| 紫金县| 扎兰屯市| 梓潼县| 板桥市| 唐山市| 桦甸市| 桐乡市| 潜江市| 子长县| 青海省| 平山县| 肥乡县| 双柏县| 红河县| 衡东县| 全南县| 邢台市| 洪江市|