麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > DB2 > 正文

DB2數據庫日常實用操作

2024-09-06 23:57:56
字體:
來源:轉載
供稿:網友

本文介紹了DB2數據庫日常實用操作的方法。

(1)Load 方法裝入數據:

export to tempfile of del select * from TABLENAME where not  清理條件;

load from tempfile of del modified by delprioritychar replace into TABLENAME nonrecoverable;

說明:在不相關的數據表export數據時,可以采取并發的形式,以提高效率;

TABLENAME指待清理table的名稱;

modified by delprioritychar防止數據庫記錄中存在換行符,導致數據無法裝入的情況;

replace into對現數據庫中的內容進行替換,即將現行的數據記錄清理,替換為數據文件內容;

nonrecoverable無日志方式裝入;

(2)查找當前的應用:db2 list application |grep BTPDBS;

(3)刪除當前正在使用的application:

db2 "force application (Id1,Id2,Id3)"

Id1,Id2,Id3 是List顯示的應用號;

(4)查看當前應用號的執行狀態:

db2 get snapshot for application agentid 299 |grep Row

(5)查看數據庫參數:

db2 get db cfg for //當前數據庫可以省略

(6)修改數據庫的Log數據:

db2 update db cfg using <參數名> <參數值>

(7)Db2Stop Force的用法:

在進行Bind的時候出現如下錯誤:

SQL0082CAn error has occurred which has terminated processing.

SQL0092NNo package was created because of previous errors.

SQL0091NBinding was ended with "3" errors and "0" warnings.

主要是表文件被加鎖,不能繼續使用;

在進行stop的時候報錯:db2stop

8/03/2005 21:46:530 0 SQL1025NThe database manager was not stopped because databases are still active.

SQL1025NThe database manager was not stopped because databases are still active.

需要使用如下命令可以解決這個問題: db2stop force

08/03/2005 21:47:49 0 0 SQL1064NDB2STOP processing was successful.

SQL1064NDB2STOP processing was successful.

然后啟動數據庫db2start,連接數據庫db2s后,重新進行bind即可。

(8)緩沖池參數修改:

db2 alter bufferpool ibmdefaultbp size 10240

查看本表的數據內容如下:db2 "select * from syscat.bufferpools";

(9)DB2 日志處理:

DB2日志是以文件的形式存放在文件系統中,分為兩種模式:循環日志和歸檔日志。當創建新數據庫時,日志的缺省模式是循環日志。在這種模式下,只能實現數據庫的脫機備份和恢復。如果要實現聯機備份和恢復,必須設為歸檔日志模式。

目前在綜合業務系統中,設置的均是歸檔日志模式;其它系統(如事后監督、經營決策、中間業務等)一般都設置為循環日志模式。至于采用何種模式,可以通過修改數據庫配置參數(LOGRETAIN)來實現: 歸檔日志模式:db2 update db cfg for using logretain on 注:改為on后,查看數據庫配置參數logretain的值時,實際顯示的是recovery。改變此參數后,再次連接數據庫會顯示數據庫處于備份暫掛(BACKUP PENDING)狀態。這時,需要做一次對數據庫的脫機備份(db2 backup db ),才能使數據庫狀態變為正常。

循環日志模式:db2 update db cfg for using logretain off

(10)Db2 日志處理

必須按照以下正確的步驟進行操作:

要求必須使用DB2命令PRUNE進行清理,不建議使用rm命令刪除。

刪除前應保證應用已停止(即聯機已下來)。

查看當前使用的日志文件目錄及第一活動日志文件

用 “db2 get db cfg for ”命令查看日志文件目錄(Path to log files)參數,確定數據庫當前使用的日志文件目錄。 例如:Path to log files = /db2log/,說明DB2日志存放目錄是/db2log

用 “db2 get db cfg for ”命令查看第一活動日志文件(First active log file)參數,該參數對應的日志文件之前的日志文件均為歸檔日志文件,如果確認沒有用,可以刪除。 例如:First active log file = S0015913.LOG,說明當前第一活動日志文件是S0015913.LOG。

備份好要刪除的歸檔日志

刪除歸檔日志 以應用用戶(如BTP)登錄,執行:

$ db2 connect to

$ db2 prune logfile prior to S???????.LOG

注:S???????.LOG為查看到的第一活動日志文件。此命令可以將當前第一活動日志文件之前的歸檔日志文件全部刪除。

(11)如何清理db2diag.log文件

db2diag.log,是用來記錄DB2數據庫運行中的信息的文件。可以通過此文件,查看記錄的有關DB2數據庫詳細的錯誤信息。此文件也是不斷增大的,需要定期進行清理。

可以通過查看實例的配置參數DIAGPATH,來確定db2diag.log文件是放在哪個目錄下:db2 get dbm cfg 如果Diagnostic data directory path(DIAGPATH) = /home/db2inst1/sqllib/db2dump,則此文件是放在/home/db2inst1/sqllib/db2dump目錄下。當文件系統/home的使用率達到80%-90%左右時,應及時刪除db2diag.log文件。

請按以下正確步驟操作:確認應用(如BTP)、DB2已經停止。

將原db2diag.log文件備份到其它文件系統下。

刪除db2diag.log文件。刪除后,DB2會自動創建一個新的文件。

(12)Load 操作

在進行load的時候 db2 "load from acmmst.txt of del modified by coldel| replace into acmmst nonrecoverable ”

由于數據不規范出現錯誤,強行中斷以后,進行操作的時候出現如下錯誤:

SQL0668NOperation not allowed for reason code "3" on table "BTP.ACMMST".

SQLSTATE=57016

此時,進行反方向操作即可:

db2 "load from /dev/null of del terminate into acmmst nonrecoverable"。

如果沒有使用參數nonrecoverable,則會出現數據庫狀態不正確的情況,使用:

db2 list tablesapces show detail 查看狀態,如果不是正常狀態,則脫機狀態進行備份即可。

兩個表文件之間UPDATE的方法:

db2 "update cdmcrd set offset = (select cdmlsl.offset from cdmlsl where cdmlsl.crdno=cdmcrd.crdno) where cdmcrd.crdno in (select cdmlsl.crdno from cdmlsl)

(13)多字段條件查詢和修改

表A中的字段有actno, cnlno,bal,pwd;表B中的字段為Actno,Cnlno,TxnAmt;目的是將A表中的bal修改為B表中的TxnAmt,命令:

db2 "update A set bal=(select txnamt from B where actno=A.actno and cnlno=A.Cnlno) where A.actno||A.cnlno in (select Actno||cnlno from B );

(14)多條件匹配查詢

查詢某個表中條件是B?AAA的記錄:

db2 "select * from A where actno like 'B_AAA%'".

查詢數據中存在某些字符的記錄:

db2 "select * from A where actno like '%-AAA%".

(15)數據庫恢復的處理

進行數據庫恢復的時候使用以下的命令:

以下是引用片段:
  restore db db1 to /tstdb2/catalog into db newlogpath /tstdb2/db2log buffer 2048
  replace existing redirect parallelism 16;
  set tablespace containers for 1 using (path '/tstdb2/db2tmp');
  set tablespace containers for 2 using
  (device '/dev/rtstcontlv00' 2621440, device '/dev/rtstcontlv01' 2621440,
  device '/dev/rtstcontlv02' 2621440, device '/dev/rtstcontlv03' 2621440 ) ;
  restore db db1 continue;

  恢復完成以后執行命令db2s時報如下的錯誤

 

以下是引用片段:
 P570:>db2s
  SQL1117N A connection to or activation of database "DB" cannot be made
  because of ROLL-FORWARD PENDING. SQLSTATE=57019
  DB21034E The command was processed as an SQL statement because it was not a
  valid Command Line Processor command. During SQL processing it returned:
  SQL1024N A database connection does not exist. SQLSTATE=08003

  解決辦法如下:  

 

以下是引用片段:
P570:>db2 rollforward db db to end of logs and complete
  Rollforward Status
  Input database alias = db
  Number of nodes have returned status = 1
  Node number = 0
  Rollforward status = not pending
  Next log file to be read =
  Log files processed = -
  Last committed transaction = 2005-11-20-10.59.23.000000
  DB20000I The ROLLFORWARD command completed successfully.
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久久久久久久久性 | 91成人午夜性a一级毛片 | 91精品国产成人 | 久久久久久久久久久一区 | 天天草夜夜骑 | 草妞视频 | 日本黄色一级视频 | 久久人人爽人人爽人人片av高清 | 渔夫荒淫艳史 | 国产在线精品一区二区三区不卡 | 久久精品视频1 | 久草在线免费资源站 | 欧美三级日本三级少妇99 | 午夜国产在线 | 成人午夜在线播放 | 在线看成人av | 中文字幕亚洲一区二区三区 | 久草干 | 黄色高清免费 | 欧美城网站地址 | 毛片免费看网站 | 国产a一级片 | 亚洲电影在线观看高清免费 | 久久久久国产成人免费精品免费 | 久久久久久久免费精品 | 97久久精品一区二区三区观看 | 国产精品成年片在线观看, 激情小说另类 | 日韩精品久久久久久久九岛 | 在线视频观看一区二区 | 成人精品aaaa网站 | 精品国产一区二区亚洲人成毛片 | 欧美在线观看禁18 | 中文字幕一区在线观看视频 | 亚洲精品午夜国产va久久成人 | 中文日韩 | 美女视频大全网站免费 | 福利免费观看 | 男女隐私免费视频 | 在线看免费观看av | 干色视频 | 欧美中文字幕一区二区三区亚洲 |