DB2 老筆記系列(一)

君落塵發表於2014-11-24
很久沒有使用DB2了,以前做的老筆記翻出來看看。

一、例項與資料庫:

系統也稱資料庫分割槽,一個系統可包含多個DB2例項,每個例項可管理多個資料庫。

每個例項都是一個獨立的執行環境,例項又稱為資料庫管理器。

例項本質上由一組程式和共享記憶體組成,為資料庫執行提供環境,可當做服務。例項停止,則記憶體釋放,程式停止;

安裝DB2之後,linux需建立與例項名同名的使用者及所屬組,例項依賴於使用者,切換使用者即是切換例項。而windows自動建立名為DB2的初始例項;

在windows上例項是作為服務存在的,所以在服務皮膚上你可以看到與例項同名的服務。安裝期間建立的例項設定為自動啟動,而使用db2icrt建立的例項設定為手動啟動,要更改啟動型別,需轉主服務皮膚更改DB2服務屬性。

linux下db2安裝:./db2_install -b DB2DIR -P productname

建立例項:linux:DB2DIR/instance/db2icrt -a authtype -u fencedid instancename;
 WINDOWS:DB2DIR/bin/db2icrt instname;

例項常用命令:

列出例項:db2ilist;
檢視例項程式: ps -ef | grep -i INSTANCE;
切換例項:db2 get instance;
                  set db2instance=instname;
配置例項:db2 get dbm cfg;
自動啟動例項:db2iauto -on[off] instance_name;
啟動/停止例項:db2start/db2stop;
刪除例項:db2idrop ;

二、訪問資料庫:

DB2訪問資料庫有兩種方式:一是本地透過GUI或者CLP方式進行訪問;二是遠端透過配置伺服器和客戶端通訊。

DB2 CLP是由一個前端程式和一個後端程式組成的,前者處理與作業系統命令符的通訊;後者處理與資料庫的通訊。

DB2互動狀態下執行操作命令需要加上感嘆號字首。

對於特殊字元,作業系統shell可能錯誤解釋,因此對於含有特殊字元的sql語句,要加上“”雙引號,以由DB2進行解釋。

DB2CLP命令選項:db2 list command options;
db2 update command options using c on;

定製CLP:db2set db2_clpprompt="(instance:%i,database:%d):";

長語句可使用‘\’進行續行。

本地連線是一個資料庫管理器例項與由那個例項管理的資料庫之間的連線,而伺服器到客戶機的連線通訊指的是遠端連線。

DB2將遠端資料庫伺服器端的節點及資料庫資訊寫入本地的SQLNODIR和SQLDBDIR檔案,這一過程稱為CATALOG(編目),可透過配置助手完成。

service檔案指定伺服器應用程式偵聽客戶機請求的埠,包含著在伺服器上定義的服務及其埠號。

如果建立到遠端資料庫伺服器的連線使用的是主機名,但網路沒有DNS(域名伺服器,用來解析主機名到IP地址),則必須更新HOSTS檔案,若透過IP地址則不需要。

配置TCP/IP通訊:

db2 get database manager configuration |find /i "svcename";

netstat -a | find /i "db2c_db2";

db2 get dbm cfg(svcename);

在確定ip_address/hostname/port_number/svcename等後,執行下面命令進行編目:

db2 catalog TCPIP node nodename remote ip_address server service_name|port_number;

db2 catalog database db_name as database_alias at node nodename;

控制中心依賴於資料庫管理伺服器(das)的存在。

DAS是可以同時管理多個例項的特殊例項,主要執行遠端圖形化介面管理功能。預設服務名為DB2DAS00;

DAS預設安裝目錄/opt/IBM/db2

DAS的啟動、停止和刪除:db2admin start/db2admin stop/dasstop;

三、變數和目錄

DB2登錄檔變數列表:db2set -all;

db2set -all 變數有三種:環境變數[e]、全域性註冊變數[g]和例項級註冊變數[i];

環境變數是作業系統級別定義的變數;全域性註冊變數和例項級註冊變數定義了DB2操作環境;

節點目錄(SQLNODIR)儲存遠端資料庫的所有連通性資訊,是和例項對應的,在客戶機上訪問遠端例項,則必須為該例項建立一個與例項對應的節點目錄。

系統DB目錄(SQLDBDIR)則是本地和遠端資料庫目錄。

例項目錄(SQLLIB)由DB2INSTPROF變數定義。

檢視本地節點目錄: db2 list node directory;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29819001/viewspace-1344640/,如需轉載,請註明出處,否則將追究法律責任。

相關文章