程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> 學習db2過程中的一些記錄

學習db2過程中的一些記錄

編輯:DB2教程

學習db2過程中的一些記錄   實現:在客戶端遠程連接服務器端的db2(db2之間的互連)   本文假定如下: 客戶端為windows/linux/unix,客戶端也已經安裝了db2或者客戶端 服務器端為windows/linux/unix 客戶端ip:192.168.42.147,服務器端ip為192.168.42.102   步驟: 在客戶端建立服務器端數據庫的節點 在客戶端命令行執行 Db2 catalog tcpip node test remote 192.168.42.102 server 50000 注:test為在客戶端定義的節點,名字可以任意 192.168.42.102為客戶端的ip 50000為DB2使用的端口 查找服務器端DB2使用的端口, 如果服務器端為linux,可以訪問/etc/services文件,如果你的實例名為db2inst1,找到如下行 db2inst1 50000/tcp 如果服務器端為windows,查看X:/WINNT/System32/drivers/etc/services   綁定節點和客戶端的數據庫 執行下面的命令db2 catalog db coshine at node test 注:coshine為服務器端中你想要連接的數據庫名 Test就是步驟一種定義的節點 使綁定生效 執行db2 terminate 設定客戶端db2codepage(代碼頁設置)即字符編碼 先在服務器端查詢db2codepage,執行db2set –all [i] DB2_EXTENDED_OPTIMIZATION=ON [i] DB2_DISABLE_FLUSH_LOG=ON [i] AUTOSTART=YES [i] DB2_STRIPED_CONTAINERS=ON [i] DB2_HASH_JOIN=Y [i] DB2COMM=tcpip [i] DB2CODEPAGE=819 [i] DB2_PARALLEL_IO=* 可以看到服務器端的DB2CODEPAGE為819,所以客戶端也必須設置為這個數字 執行db2set db2codepage=819 進行連接 執行db2 connect to coshine user user_name using password   注釋 Db2codepage:即db2數據庫的編碼方式 db2codepage=1386(簡體中文)  db2country=86(中國) 一個數據庫一旦建立,他的代碼頁就沒有辦法改,         db2set   DB2CODEPAGE=1386只能改變代碼頁環境,不能改變數據庫的代碼頁   如果不能連接:檢查如下是否正確 確保可以ping通服務器端:ping 192.168.42.102 確保服務器端的db2已經啟動:db2start   確保客戶端DB2COMM設置為tcpip 先查看db2comm設置:db2set –all   如果沒有設置這個注冊表,執行db2set db2comm=tcpip 將SVCENAME設置成/etc/services中的端口號或者服務名了嗎? 執行db2 get dbm cfg查看,找到SVCENAME,如果當前值不是服務器端的端口號或者服務名,進行更新設置 執行:db2 update dbm cfg SVCENAME db2inst1 注:db2inst1為服務名,這個在/etc/services文件中db2inst1 50000/tcp 一致   DB2數據庫基本操作指令30條   1.查看本地節點目錄   命令窗口中輸入:db2   list   node   directory   2.編目一個TCP/IP節點   命令窗口:db2   catalog   tcpip   node      remote     server      ostype    3.取消節點編目   db2   uncatalog   node     4.查看系統數據庫目錄   db2   list   database   directory   5.查看本地數據庫目錄   db2   list   database   directory   on   <盤符>   在本地數據庫目錄中有而系統數據庫目錄中沒有的數據庫不能訪問,可以在控制中心中選中 <數據庫> 右鍵單擊選擇添加,然後輸入需要添加的數據庫名稱或者點擊刷新按鈕選擇數據庫,加入數據庫後即可以訪問。   6.編目數據庫    db2   catalog   database      as      at   node       7.取消數據庫編目     db2   uncatalog   database     8.測試遠程數據庫的連接   db2   connect   to      user      using     9.任何用戶均可通過設置CurrentSchema專用寄存器為特定的數據庫連接設置默認模式,初始默認值為當前會話用戶的權限ID。   set   schema   =     可以由用戶交互式的使用,也可在應用程序中使用,如果用DynamicrulesBind選項綁定包,這個語句就沒有作用。此語句不在事務控制之下。   10.代碼頁的設置   在創建數據庫時設置字符集   create   database      using   codeset      territory     例:  create   database   dbtest   using   codeset   IBM-437   territory   US   也可以設置整個數據庫的代碼頁,在win2000/NT/xp中,在我的電腦--> 屬性--> 高級--> 環境變量中添加變量DB2CODEPAGE   =   ,例:DB2CODEPAGE   =   437   或   DB2CODEPAGE   =   1386。或者在IBM   DB2命令窗口輸入db2set   DB2CODEPAGE=1386,設置後需要重新啟動DB2生效。   11.DB2低版本數據到高版本的遷移   先將低版本數據備份使用恢復功能導入高版本數據庫,然後在命令窗口輸入db2   migrate   database   。   12.表名或模式中含有引號時訪問表   命令窗口:db2   select   *   from   \ "tabschema\ ".\ "tabname\ "     命令行處理器:db2=>   select   *   from   "tabschema ". "tabname "   13.導出數據庫的表結構生成DDL文件   命令窗口:db2look   -d      -e   -c   -o       14.執行腳本文件   命令窗口:db2   -tvf     15.代碼頁的轉換   16.獲取當前DB2的版本  select   *   from   sysibm.sysversions   17.DB2表的字段的修改限制?   只能修改VARCHAR2類型的並且只能增加不能減少   alter   table      alter   column      set   data   type   varchar   (SIZE)   18.如何查看表的結構?     describe   table   or describe   select   *   from   .   19.如何快速清除一個大表?   ALTER   TABLE   TABLE_NAME   ACTIVE   NOT   LOGGED   INITALLY   WITH   EMPTY   TABLE   20.如何查看數據庫的存儲過程?   SELECT   *   FROM   SYSCAT.PROCEDURES   21.如何查看表的約束?   SELECT   *   FROM   SYSCAT.CHECKS   WHERE   TABNAME   =     22.如何查看表的引用完整約束?   SELECT   *   FROM   SYSCAT.REFERENCES   WHERE   TABNAME   =     23.如何知道BUFFERPOOLS狀況?   select   *   from   SYSCAT.BUFFERPOOLS   24.如何在命令行下查看修改實例和數據庫配置參數?   查看實例配置參數:db2   get   dbm   cfg   修改實例配置參數:db2   update   dbm   cfg   using   參數名   新值    查看數據庫配置參數:db2   get   db   cfg   for       修改數據庫配置參數:db2   update   db   cfg   for      using   參數名   新值   25.如何修改緩沖區?   增加緩沖區:create   bufferpool      size      [pagesize   4096]   {[not]   EXTENDED   STORAGE}  修改緩沖區: alter   bufferpool      size      {[not]   EXTENDED   STORAGE}     刪除緩沖區: drop       bufferpool     如果緩沖區大小設置為   -1   表示緩沖池的頁面數目由數據庫配置參數buffpage決定。   注意:數據庫配置參數buffpage僅對緩沖區大小設置為   -1   的緩沖池起作用。   26.多個字段時如何不通過使用select子句使用 in/not   in   select   *   from   tabschema.tabname   where   (colA,   colB,   colC)   [not]   in   (values   (valueA1,   valueB1,   valueC1),   (valueA2,   valueB2,   valueC2),   ...(valueAn,   valueBn,   valueCn))   27.查看當前連接到數據庫的應用   db2   list   application   [show   detail]   28.如何確認DB2數據庫的一致性   db2dart      /DB /DB表示檢查整個數據庫的一致性   29.導出某個表的數據   export   to     如:導出用戶表   export   to   c:\user.ixf   of   ixf   select   *   from   user    30、導入數據   import   from     如:導入用戶表。導入時可以直接建立新表。如果有該表存在也可以用INSERT插入,或者用UPDATE更新

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved