Bai Giang CSDL DB2.pdf

  • Upload
    congku

  • View
    43

  • Download
    5

Embed Size (px)

Citation preview

  • H QUN TR C SD LIU

    DB2 EXPRESS C 9.5

    Mai Thanh Trc (Ma.)

  • NI DUNG

    n Phn 1: Tng quan v ci tn Gii thiu DB2 Express Cn Tnh nng v cc sn phmn Ci t DB2n Mi trng ca DB2n Cc cng c ca DB2

  • NI DUNG

    n Phn 2: Qun tr c s d liun Kin trc ca DB2n Kt ni my khch DB2n Lm vic vi cc i tng d liun Di chuyn d liun Bo mt c s d liun Sao lu v phc hin Bo trn Truy cp ng thi v kho

  • NI DUNG

    n Phn 3: Pht trin ng dngn Cc th tc SQL PLn Hm ni tuyn (Inline SQL PL), Hm ngi

    dng t nh ngha (UDF), x l s kin by (Triggers)

    n SQL/XML v Xqueryn Pht trin vi Ngn ng lp trnh

  • Tham kho

    n Ti nguyn DB2 Express C ti www.ibm.com/db2/express/

    n Ti liu dnh cho ngi hc tp v nghin cu ti www.channelDB2.com/oncampus/www.ibm.com/db2/express/students.htmlhttp://www.ibm.com/developerworks/db2/

    n Cng ng ngi pht trin ng dng Vit Nam ti http://www.ibm.com/developerworks/vn/

  • Tng quan v Ci t DB2

    n DB2 Express-C l g?n Cc tnh nng lin quan v cc sn phmn Ci t DB2 Express Cn Mi trng ca DB2n Cc cng c DB2

  • Tng quan v Ci t DB2

    n DB2 Express-C l g?n Cc tnh nng lin quan v cc sn phmn Ci t DB2 Express Cn Mi trng ca DB2n Cc cng c DB2

  • DB2 Express C l g?

    n Mt sn phm dng DB2 ca IBMn Ra i 6/1983, chy trn my ch

    (Mainframe) vi z/OSn Khong gia nhng nm 1990, bt u c

    DB2 chy trn cc my Desktopn Hin nay c DB2 chy trn z/OS (mainframe),

    trn iSeries (AS400 OS400), trn LUW (Linux, Unix, Windows)

    n DB2 9.5 ra i 1/2006n Phin bn hin nay l DB2 9.7

  • DB2 Express C l g?

    n DB2 Express C l n bn min ph, khng gii hn, d s dng (C = Community)n Nh pht trin phn mm CSDL khch -

    chn ISVs (Independent software vendor) nh

    cung cp phn mm c lp, cho thu phn cng, cung cp gii php

    n Cc cng ty va v nhn Nghin cu, hc tp

  • DB2 Express C l g?

    n y tnh nng c trn trn nn h iu hnh Linux, Unix, Windows

    n Chy trn nn tng 32 bit hoc 64 bitn Ti u cho b x l 2 li v 2GB RAMn Bao gm c pureXML

  • DB2 Express C l g?

    n c im khi s dng DB2 Express Cn T do pht trin: min ph khi pht trin cc

    sn phm phn mm trn h qun tr CSDL DB2 Express C

    n T do trin khai: min ph khi ng dng DB2 Express C vo hot ng sn xut kinh doanh

    n T do phn phi: min ph c khi ng gi vo mt sn phm phn mm khi phn phi

    n Khng gii hn: khng gii hn v kch thc CSDL cng nh s lng kt ni v ngi sdng

  • DB2 Express C l g?

    n My ch DB2

  • DB2 Express C l g?

    n My khch DB2

  • DB2 Express C l g?

    n Ngn ng pht trinRuby trn nn Rails, C/C++(ODBC v SQL nhng), JDBC v SQLJ, COBOL, Borland, Python, PHP, Perl, Ngn ng .NET, OLE DB, ADO, Dch v Web (Web Service), SQL, Microsoft Office: Excel, Access, Word

  • DB2 Express C l g?

    n Phin bn (version) v n bn (edition) DB2n Phin bn l bn pht hnh c b sung

    thm mt s tnh nng mi v sa li (8.1 v 8.2 l 2 ln pht hnh ca DB2 8)

    n n bn l nhng gi sn phm vi chc nng khc nhau (phin bn DB2 9.5 ccc n bn DB2 Express C, DB2 Express, DB2 Workgroup, DB2 Enterprise)

  • DB2 Express C l g?

    n Chuyn sang n bn khcn Nng cp ln n bn khc trn cng mt

    my tnh, ch cn ci n bn mi ln trn DB2 Express C (sao lu d liu trc khi thc hin)

    n Nng cp ln mt my mi, s dng chung h iu hnh vi my c ch cn ci n bn trn my tnh mi, sao lu d liu trn my tnh c, v khi phc li n trn my mi

  • DB2 Express C l g?

    n H tr k thutn Bn quyn 12 thngn H tr k thut t cng ng

  • DB2 Express C l g?

    n Mt s phn mm min ph lin quann B cng c pht trin IBM Data Studion My ch nhng DB2 9 Embedded Application

    Servern M rng tm kim DB2 9.5 Net Search

    Extendern H tr pht trin ng dng Web (Ruby on

    Rails, Web 2.0 Starter Toolkit for IBM DB2)

  • Tng quan v Ci t DB2

    n DB2 Express-C l g?n Cc tnh nng lin quan v cc sn phmn Ci t DB2 Express Cn Mi trng ca DB2n Cc cng c DB2

  • Cc tnh nng ca sn phm

    n Chc nng DB2 Express C (min ph)n Nhn ca DB2n Trung tm iu khin (Control Center), Data

    Studio, v cc cng c qun trn pureXMLn 2GB b nh v 2 b vi x ln Linux, Windows v Solaris (x86)

  • Cc tnh nng ca sn phm

    n Chc nng DB2 (c ph)

  • Tng quan v Ci t DB2

    n DB2 Express-C l g?n Cc tnh nng lin quan v cc sn phmn Ci t DB2 Express Cn Mi trng ca DB2n Cc cng c DB2

  • Ci t DB2 Express C

    n iu kin trc khi ci tn H iu hnh Linux, Solaris (x86), Windows

    (2000, 2003, XP, Vista)n Vi x l 32bit, 64bit, PowerPC (Linux)n S dng ti a 2 CPU, 2GB RAM (4 CPU,

    4GB RAM cho ph bn quyn 12 thng)n Quyn ci t trn h iu hnh (Root trn

    Linux, nhm qun tr hoc c quyn ci t trn Windows)

  • Ci t DB2 Express C

    n Hng dn ci t tng bcn Windows: chy SETUP.EXE trong EXPn Linux: chy db2setup trong EXP

  • Ci t DB2 Express C

    n Hng dn ci t tng bc

  • Ci t DB2 Express C

    n Hng dn ci t tng bc

  • Ci t DB2 Express C

    n Hng dn ci t tng bc

  • Ci t DB2 Express C

    n Hng dn ci t tng bc

  • Ci t DB2 Express C

    n Hng dn ci t tng bc

  • Ci t DB2 Express C

    n V d: Ci t mt my ch DB2 trn h iu hnh Windows v to CSDL mu

  • Tng quan v Ci t DB2

    n DB2 Express-C l g?n Cc tnh nng lin quan v cc sn phmn Ci t DB2 Express Cn Mi trng ca DB2n Cc cng c DB2

  • Mi trng ca DB2 Express C

    n Gii thiu

  • Mi trng ca DB2 Express C

    n Cc th hin (Instances)

  • Mi trng ca DB2 Express C

    n Cc th hin (Instances)

  • Mi trng ca DB2 Express C

    n Cc th hin (Instances)

  • Mi trng ca DB2 Express C

    n Cc th hin (Instances)n To mt Instance

    n db2icrt n Chuyn i gia cc Instance

    n set db2instance = n Linux: chuyn ngi s dng bng su

    n Hin th danh sch cc instance trn Servern db2ilist

    n Hin th instance hin tin db2 get instance

  • Mi trng ca DB2 Express C

    n Cc th hin (Instances)

    Lit k cc th hin ang hot ng

    db2 get instance

    Lit k cc th hin ang ctrong h thng

    db2ilistLoi b mt th hindb2idropTo mt th hin midb2icrtDng th hin hin tidb2stopKhi ng th hin hin tidb2start

  • Mi trng ca DB2 Express C

    n Cc c s d liu (Databases)

  • Mi trng ca DB2 Express C

    n Cc c s d liu (Databases)n To CSDL trong mt instance

    n db2 create database mybd1n Hin th danh sch cc CSDL trong instance

    n db2 list db directoryn Mt s lnh lm vic vi database

    Kt ni n mt CSDLdb2 connect to

    Xo mt CSDLdb2 drop databaseTo mt CSDL midb2 create database

  • Mi trng ca DB2 Express C

    n Cc c s d liu (Databases)

  • Mi trng ca DB2 Express C

    n Cc c s d liu (Databases)n To mt CSDL trn instance khc

    n db2 list db directory n set db2instance=myinst n db2 create database mydb1 n set db2instance=db2

    n S dng Control Center

  • Mi trng ca DB2 Express C

    n Khng gian bng trong CSDL

  • Mi trng ca DB2 Express C

    n Khng gian bng trong CSDL

  • Mi trng ca DB2 Express C

    n Khng gian bng trong CSDLn SYSCATSPACE: ni cha cc bng danh

    mc (catalog)n TEMPSPACE1: c s dng khi cn thm

    khng gian x l thao tc (nh sp xp)n USERSPACE1: c s dng lu tr cc

    bng CSDL ngi dng khi khng c khng gian ring lu tr n.

    n IBMDEFAULTBP: vng m d liun LOGS: tp nht l dng phc hi d liu

  • Mi trng ca DB2 Express C

    n Khng gian bng trong CSDL

  • Mi trng ca DB2 Express C

    n Cu hnh DB2n Cc bin mi trngn Tp cu hnh qun

    tr CSDL (dbm cfg)n Tp cu hnh CSDL

    (db cfg)n ng k l lch DB2

  • Mi trng ca DB2 Express C

    n Cu hnh DB2n Cc bin mi trng

    l bin c thit lp h iu hnh, l mt DB2INSTANCE.

    n V d:n set db2instance =

    myinst

  • Mi trng ca DB2 Express C

    n Cu hnh DB2n Tp cu hnh qun

    tr CSDL (dbm cfg) gm cc tham s lin quan n thhin v cc CSDL trong .

    n C th cu hnh bng dng lnh hoc Control Center

  • Mi trng ca DB2 Express C

    n Cu hnh DB2n Xem ni dung tp

    cu hnhn get dbm cfg

    n Cp nht tp cu hnh

    n update dbm cfg using

    n update dbm cfg using DFTDBPATH D:

  • Mi trng ca DB2 Express C

    n Cu hnh DB2

  • Mi trng ca DB2 Express C

    n Cu hnh DB2n Tp cu hnh CSDL

    (db cfg) gm cc tham s tc ng n tng CSDL

    n C th cu hnh bng dng lnh hoc Control Center

  • Mi trng ca DB2 Express C

    n Cu hnh DB2n Xem ni dung tp

    cu hnhn get db cfgn get db cfg for

    n Cp nht tp cu hnh

    n update db cfg for using

    n update db cfg for sample using DLCHKTIME 10000

  • Mi trng ca DB2 Express C

    n Cu hnh DB2

  • Mi trng ca DB2 Express C

    n Cu hnh DB2n ng k l lch DB2

    (profile) bao gm cc tham s c thtrn mt nn c thv c th thit lp thnh ton cc (nh hng tt c cc th hin) hoc tng lp th hin (nh hng ring tng th hin)

  • Mi trng ca DB2 Express C

    n Cu hnh DB2n Mt s lnh iu khin cc bin ng k l lch

    DB2

    Thit lp gi tr cho mt tham s

    db2set =

    Lit k tt c cc bin ng k l lch DB2

    db2set lr

    Lit k tt c cc bin ng k l lch DB2 hin ti c thit lp

    db2set all

  • Mi trng ca DB2 Express C

    n Cu hnh DB2n Mt s bin ng k l lch DB2 thng dng

    Lu tr tn ca bn sao DB2 hin ang s dng

    DB2_COPY_NAME

    Ngn chn nhng ngi cha c nh danh kt ni vi DB2 (Windows)

    DB2_EXTSECURITY

    Ch nh giao thc c khi ng khi cng c qun tr CSDL c khi ng

    DB2COMM

  • Mi trng ca DB2 Express C

    n My ch qun tr DB2 (DAS)n L tin trnh nn chy trn my ch DB2 cho

    php cc my khch qun tr my ch DB2 qua giao din ho

    n Ch c mt DAS cho tt c cc instancen c to lc ci t DB2n Mt s lnh

    n db2admin create / db2admin dropn db2admin start / db2admin stop

  • Mi trng ca DB2 Express C

    n My ch qun tr DB2 (DAS)

  • Tng quan v Ci t DB2

    n DB2 Express-C l g?n Cc tnh nng lin quan v cc sn phmn Ci t DB2 Express Cn Mi trng ca DB2n Cc cng c DB2

  • Cng c ca DB2 Express C

    n Cng c ca DB2n Tng quann Trung tm iu khin (Control Centre)n Ca s son tho lnh (Command Editor)n Ca s lnh (Command Windows)n Trnh tr gip SQL (SQL Assist)n Trung tm tc v (Task Center)n Nht k (Journal)

  • Cng c ca DB2 Express C

    n Cng c ca DB2

  • Cng c ca DB2 Express C

    n Cng c ca DB2

  • Cng c ca DB2 Express C

    n Control Centern L cng c qun tr chnh ca DB2n Cho php thc hin:

    n H tr xem xt h thng DB2n To, sa v qun l cc CSDLn Qun l cc i tng trong CSDL (tables,

    views, indexes, )n Chy cc cng c GUI khc

  • Cng c ca DB2 Express C

    n Control Centern Chn cch hin th ca Control Center khi bt

    u chy ng dng (Menu Tools/Customize Control Center)

  • Cng c ca DB2 Express C

    n Control Centern C th chy Control Center bng nhiu cch

    n Qua Start Menun Chy db2cc t ca s lnhn Chn biu tng Control Center trn thanh

    cng c ca bt k ng dng DB2 GUI no n Chy t biu tng DB2 trn khay h thng

  • Cng c ca DB2 Express C

    n Control Center

    Cy i tng

    Danh sch i tng

    Chi tit i tng

  • Cng c ca DB2 Express C

    n Command Editorn S dng Command Editor c th thc hin

    cc cu lnh DB2 v cu lnh truy vn SQL,

    n C th chy Command Editor nh sau:n Qua Start Menun Chy db2ce t ca s lnhn Chn biu tng Comamnd Editor trn thanh

    cng c Control Centern T Tools Menu trong Control Center

  • Cng c ca DB2 Express C

    n Command Editor (tip)n C th nhng Command Editor vo trong

    Control Centern Phi chut vo mt CSDL v chn Queryn Chn ng link Query trong phn chi tit i

    tng khi ang ang chn mt CSDL, table hay view no .

  • Cng c ca DB2 Express C

    n Command Editor (tip)

    Ni nhp lnh

    Ca skt qu

    Thm kt ni CSDL

    CSDL ang kt ni

    K t sdng bo

    ht cu lnh

  • Cng c ca DB2 Express C

    n Command Windows /CLPn Ca s lnh thc hin cc cu lnh bng

    dng lnh (db2cmd, tng t cmd)n Ch s dng trn Windows, s dng Linux

    Shell trn Linuxn C th thc hin c cu lnh db2 (db2==>)

  • Cng c ca DB2 Express C

    n Trnh tr gip SQL (SQL Assist)

  • Cng c ca DB2 Express C

    n Trung tm tc v (Task Center)

  • Cng c ca DB2 Express C

    n Trung tm tc v (Task Center)n Cho php to ra nhng tc v vi giao din

    ho nh chy cc lnh ca DB2, cc lnh ca h iu hnh, cc kch bn thc thi,

    n Cc tc v sau vn c th thc hin cho dtc v trc thc hin khng thnh cng

    n Ch thc hin khi to mt CSDL Tools Catalog

  • Cng c ca DB2 Express C

    n Nht k (Journal)

  • Cng c ca DB2 Express C

    n Nht k (Journal)n Cung cp cho ngi qun tr mt nht k v

    cc hot ng ca h thng. N gm:n Task His.: tt c cc cng vic c ln lch

    c thc hin v tnh trng hot ng ca chng

    n Database His.: bn ghi nh cc hot ng lnh CSDL (sao lu, phc hi, )

    n Messages: nht k thng ip phn hi t cc DB2 Tools

    n Notification Log: lu tr thng ip cp h thng, bao gm c cc li nghim trng

  • Qun tr C s d liun Kin trc ca DB2n Kt ni my khch DB2n Lm vic vi cc i tng d liun Di chuyn d liun Bo mt c s d liun Sao lu v phc hin Bo trn Truy cp ng thi v kho

  • Qun tr C s d liun Kin trc ca DB2n Kt ni my khch DB2n Lm vic vi cc i tng d liun Di chuyn d liun Bo mt c s d liun Sao lu v phc hin Bo trn Truy cp ng thi v kho

  • Kin trc ca DB2

    n M hnh x l ca DB2n M hnh b nh ca DB2n M hnh lu tr ca DB2

  • Kin trc ca DB2

    n M hnh x l ca DB2n Quy c k hiu:

    n Ch nht: biu din tin trnh (process)n Eslip: biu din lung x l

  • Kin trc ca DB2

    n M hnh x l ca DB2

  • Kin trc ca DB2

    Daemon t ng. N dng thc hin cc tc v t pha my khch nh hin th tnh trng, t ng bo tr, k hoch hot ng.

    db2acd

    C ch (ng c) iu khin chnh trong DB2. Trong v9.5, ch c duy nht mt tin trnh x l a lung cho tt c cc thnh phn. Tt c cc EDUs (Engine Dispatchable Units) u nm trong tin trnh ny. Khng c tin trnh ny, CSDL khng th hot ng.

    db2sysc, db2syscs (Win)

    n M hnh x l ca DB2 (tin trnh chnh)

  • Kin trc ca DB2

    DB2 Watchdog, l mc trn ca c ch x l chnh db2sysc, s gii phng ti nguyn khi kt thc db2sysc bt bnh thng

    db2wdog

    Tin trnh x l i vi cc hng khc. Cc m lnh ca cc hng khc IBM s chy bn ngoi c ch ny, v nh vy mt chng trnh khng phi ca IBM vn c th tng tc vi DB2.

    db2vend

    Cc tin trnh x l khc chy cc m lnh (gm c th tc lu tr hm do ngi dng t nh ngha) trn my ch nm ngoi tng la

    db2fmp

    n M hnh x l ca DB2 (tin trnh chnh)

  • Kin trc ca DB2

    Lung iu khin chnh ca h thng. Lung ny dng khi ng (start), tt (stop) v qun l cc th hin (instance) ang hot ng

    db2sysc

    Lung lng nghe (listener) cc yu cu qua giao thc TCP/IP

    db2tcpcm

    Tc nhn (agent) thc thi nhng thao tc CSDL thay cho nhng ng dng (t nht c 1 tc nhn trn mt kt ni, tu thuc vo b tp trung kt ni (Connection Concentrator) c thit lp)

    db2agent

    n M hnh x l ca DB2 (lung chnh)

  • Kin trc ca DB2

    Tc nhn con (subagent) ch ng c sinh ra nu tham s INTRA_PARALLEL = YES (dbm cfg). N s thc thi cc thao tc CSDL thay cho cc ng dng. db2agent s kt hp cng vic gia cc tc nhn con khc nhau.

    db2agntp

    B c d liu vo/ra khng ng b (tham sNUM_IOSERVERS ca database)

    db2pfchr

    B ghi d liu vo/ra khng ng b (tham sNUM_IOCLEANERS ca database)

    db2pclnr

    n M hnh x l ca DB2 (lung chnh)

  • Kin trc ca DB2

    n M hnh x l ca DB2 (lung chnh)n B tp trung kt ni (Connection Concentrator)

    n H tr qun l mt s lng ln ngi s dng kt ni ng thi

    n B tp trung kt ni s c thit lp khi (dbm cfg) tham s max_connection > max_coordagents

  • Kin trc ca DB2

    n M hnh b nh ca DB2

  • Kin trc ca DB2

    n M hnh lu tr ca DB2n Trang v phm vi (Pages & Extents)n Vng nh m (buffer pool)n Khng gian bng (Table Space)

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (trang / phm vi)n Trang l n v lu tr nh nht ca DB2, vi

    kch thc cho php l 4, 8, 16, 32Kn Phm vi l mt nhm cc trangn DB2 lm vic vi nhiu phm vi trong cng

    thi imn Kch thc trang v phm vi c nh ngha

    khi lm vic vi vng nh m v khng gian bng

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (vng nh m)n L vng b nh thc (real cache) cho d liu

    bng v ch mcn Ci thin tc thc thi bng gim vo/ra

    tun t trc tip v nng cp thc thi khng ng b. DB2 on trc trang no cn thit, c chng t a vo vng m, sn sng s dng.

    n Cp pht vi n v nh l cc trang.n Mi CSDL cn t nht mt b mn C t nht mt b m cho khng gian bng

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (to vng m)n Vng m c to cho tng CSDLn C th to vng m:

    n S dng lnh create bufferpooln S dng Control Center

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (to vng m)

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n L mt khng gin s dng lu tr cc

    bng, l mt giao din tru tng nm gia cc bng logic v vng lu tr vt l ca hthng (bao gm vng nh m v a)

    n Tp hp ca mt hoc nhiu container (cc file, th mc, cc thit b khc)

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n c im ca khng gian bng

    n Kch thc trang ca khng gian bng l 4, 8, 16, 32KB. Kch thc ny phi tng ng vi kch thc trang ca b m

    n Tn vng m tng ng vi khng gian bngn Kch thc phm vi: s trang c ghi vo mt

    container trc khi ghi lt tip theon Kch thc np trc: s trang d liu s c

    c trc khi cn nng cao hiu nng thc hin

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Cc loi khng gian bng

    n Thng thng: thi dnh cho User, c to ra mt cch thng thng (userspace1)

    n Ln: thng c s dng lu tr d liu ckch thc ln hoc cc d liu LOB (long or large object). Cc ch s cng c th c lu tr lun trong khng gian ny.

    n Tm thi: Ca h thng: DB2 s dng cho cc thao tc ni

    b ca h thng (TEMPSAPCE1) Ca ngi dng: c s dng cho ngi dng

    to ra cc bng tm thi

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Qun l khng gian bng

    n Qun l bi h thng (System Managed Storage SMS)

    n Qun l bi CSDL (Database Managed Storage DMS)

    n Qun l bi lu tr t ng

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Qun l khng gian bng

    n Qun l bi h thng (System Managed Storage SMS) H iu hnh qun l khng gian ny D dng trong qun l v c cha trong cc tp. Khng gian khng c cp pht trc nhng

    dung lng tng t ng Khi c cp pht, v tr lu tr khng thay i. D liu, ch mc, d liu LOB khng c tri

    nhiu trn nhng khng gian bng khc nhau

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Qun l khng gian bng

    n Qun l bi CSDL (Database Managed Storage DMS) DB2 qun l khng gian bng ny Cn s can thip ca ngi qun tr Container c th l tp c cp pht trc, hoc

    nhng thit b lu tr khc Container c th thay i kch thc, xo, thm D liu, ch mc, d liu LOB c th nm trn cc

    khng gian khc nhau nn c hiu sut tt

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Qun l khng gian bng

    n Qun l bi lu tr t ng Mong mun nh mt ca n gin qun l lu

    tr S dng tng t khng gian bng SMS nhng

    hiu sut tt v linh hot nh DMS Khng nh ngha tng minh ch cha. N c

    t ng xc nh theo ng dn Tng kch thc hay b sung thm ch mi l do

    DB2 qun l nh ngha li ng dn qua database RESTORE

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Qun l khng gian bng

    n Qun l bi lu tr t ng (v d) To CSDL c lu tr t ng

    Lu tr t ng theo mc nhCREATE DATABASE DB1Lu tr t ng ch nh tng minhCREATE DATABASE DB1 AUTOMATIC STORAGE YESLu tr t ng theo mc nh, ch ra ng dnCREATE DATABASE DB1 ON /data/path1, /data/path2Lu tr t ng khng c phpCREATE DATABASE DB1 AUTOMATIC STORAGE NO

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Qun l khng gian bng

    n Qun l bi lu tr t ng (v d) To khng gian bng lu tr t ng

    Lu tr t ng cho KGB c cho php theo mc nhCREATE TEMPORARY TABLESPACE TEMPTS

    Lu tr t ng KGB c cho php ch nh tng minhCREATE TABLESPACE TS2 MANAGED BY AUTOMATIC

    STORAGELu tr t ng khng tng minhCREATE TABLESPACE TS1 INITIALSIZE 500 K

    INCREASESIZE 100 K MAXSIZE 100 M

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Qun l khng gian bng

    n D liu lu tr trong khng gian bng

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Qun l khng gian bng

    n D liu lu tr trong khng gian bng Khng gian bng 4K vi 8 trang cho mi phm vi

    (4K x 8 = 32K) S dng 3 ch cha trong khng gian bng DMS

  • Kin trc ca DB2

    n M hnh lu tr ca DB2 (khng gian bng)n Qun l khng gian bng

    n To khng gian bng bng Control Center

  • Qun tr C s d liun Kin trc ca DB2n Kt ni my khch DB2n Lm vic vi cc i tng d liun Di chuyn d liun Bo mt c s d liun Sao lu v phc hin Bo trn Truy cp ng thi v kho

  • Kt ni my khch DB2

    n Th mc DB2n Yu cu ci t ti my chn Yu cu ci t ti my khchn Cc phng thc khc ci t kt ni

  • Kt ni my khch DB2

    n Th mc DB2: n l cc tp nh phn lu tr thng tin t cc

    CSDL m c th kt ni nn C 4 th mc

    n Th mc CSDL h thngn Th mc CSDL ni tin Th mc ntn Th mc DCS

  • Kt ni my khch DB2

    n Th mc DB2: n Th mc CSDL h thng

    n Cha danh mc cc CSDL m h thng ang qun l (gm c CSDL ni ti v t xa)

    n L cc con tr tr ti th mc CSDL ni tin L cc con tr tr ti th mc nt (node)n Cu lnh: list db directory

  • Kt ni my khch DB2

    n Th mc DB2: n Th mc CSDL ni ti (local)

    n Cha thng tin v nhng CSDL ni ti m cth kt ni c

    n Cu lnh: list db directory on

  • Kt ni my khch DB2

    n Th mc DB2: n Th mc CSDL nt (node)

    n Cha thng tin kt ni n mt CSDL xa.n Khi s dng TCP/IP, thng tin gm a ch IP

    ca my DB2 xa v a ch cng (port) ca thhin cha CSDL

    n Cu lnh: list node directory

  • Kt ni my khch DB2

    n Th mc DB2: n Th mc DCS

    n Ch s dng khi ci t phn kt ni n my ch DB2 s dng x/OS

    n Cu lnh: list dcs directory

  • Kt ni my khch DB2

    n Tr gip cu hnh (Configuration Assistant):n Cng c GUI h tr cu hnh cc kt ni n

    cc my ch DB2 xan Chy ng dng

    n Windows Start Menu: IBM DB2\DB2COPY1\Set-up tools\Configuration Assistant

    n Control Center: Tools Menu\Configuration Assistant

    n Dng lnh: db2ca

  • Kt ni my khch DB2

    n Ci t trn my chn My ch cn thit lp 2 tham s lin quan

    ca instance cho php kt nin db2comm: giao thc s s dng h tr kt

    ni t my khchn svcename (service name): tn dch v hoc s

    hiu cng (port) ca Instance cha CSDL cho php kt ni

  • Kt ni my khch DB2

    n Ci t trn my chn Thit lp quan CA

    n db2comm Db2 Registryn svcename DBM Configuration

    (Communication)n Thit lp qua CC

    n db2comm chn Instance\Set up communications

    n svcename chn Instance\Configure Parameters

  • Kt ni my khch DB2

    n Ci t trn my chn Thit lp bng dng lnh

    n db2comm db2setdb2set db2comm=TCPIP

    n svcename update dbm cfg using svcename

    update dbm cfg using svcename 50001

    n V d: thit lp tham s my ch

  • Kt ni my khch DB2

    n Ci t trn my khch

  • Kt ni my khch DB2

    n Ci t trn my khch

  • Kt ni my khch DB2

    n Ci t trn my khchn Hoc cng c th kt ni thng qua

    n Configuration AssistantAdd Database using Wizard

    n Control CenterAll Database \ Add

  • Kt ni my khch DB2

    n Ci t trn my khchn Nhng thng tin cn thit kt ni t my

    khch n my chn Tn CSDL mun kt nin S hiu cng (port) ca th hin DB2 cha

    CSDL. Cng c th s dng tn dch v nu tn ti thc th tng ng trong tp dch v TCPIP

    n ID ca ngi dng v mt khu ng nhp CSDL ca my ch

  • Kt ni my khch DB2

    n Cc phng thc khc ci t kt ni

  • Kt ni my khch DB2

    n Cc phng thc khc ci t kt ni

  • Kt ni my khch DB2

    n Cc phng thc khc ci t kt nin Tm kim t my khch

    n Cp DAS Discover = Search/Know get admin cfg update admin cfg

    using n Cp Instance

    get dbm cfg update dbm cfg

    using

  • Kt ni my khch DB2

    n Cc phng thc khc ci t kt nin Tm kim t my khch

    n Cp Database get db cfg get db cfg for update db cfg for

    using n C th kt xut (export)

    h tr ci t cho nhiu my khch hoc my ch

  • Qun tr C s d liun Kin trc ca DB2n Kt ni my khch DB2n Lm vic vi cc i tng d liun Di chuyn d liun Bo mt c s d liun Sao lu v phc hin Bo trn Truy cp ng thi v kho

  • Lm vic vi cc i tng DL

    n S (Schema)n Bng (Tables)n Khung nhn (Views)n Ch mc (Indexes)n Ton vn tham chiu (Referential Integrity)

  • Lm vic vi cc i tng DL

    n S (Schema)n mt khng gian tn (name space) cho tp

    hp cc i tng trong CSDLn c s dng :

    n Cung cp ch dn v quyn s hu (ownership) i tng hoc mi quan h vi i tng no

    n Gom cc i tng c lin quan n Tn ca tt c cc i tng CSDL, theo tiu

    chun, u c 2 phn.

  • Lm vic vi cc i tng DL

    n S (Schema)n Khi kt ni n CSDL m khng ch r

    schema, DB2 s chn nh danh (ID) ca ngi dng hin ti ang kt ni n CSDL lm tn schema

  • Lm vic vi cc i tng DL

    n Bng (Tables)n L tp hp d liu c mi quan h vi nhau

    mt cch hp l theo ct v hng

  • Lm vic vi cc i tng DL

    n Bng (Tables) kiu d liu

  • Lm vic vi cc i tng DL

    n Bng (Tables) D liu ln (LOB)

  • Lm vic vi cc i tng DL

    n Bng (Tables) D liu ngi dng t nh ngha (User-Defined Types)

  • Lm vic vi cc i tng DL

    n Bng (Tables) D liu ngi dng t nh ngha (User-Defined Types)

  • Lm vic vi cc i tng DL

    n Bng (Tables) Gi tr Nulln i din cho mt trng thi gi tr khng xc

    nhn C th thit lp gi tr mt ct trong bng

    khng c php Null

  • Lm vic vi cc i tng DL

    n Bng (Tables) Bng danh sch h thngn Mi CSDL c danh sch bng h thng ringn Lu tr cc siu d liu v cc i tng

    CSDLn C th s dng cc cu lnh truy vn nh

    nhng bng khc

  • Lm vic vi cc i tng DL

    n Bng (Tables) Bng danh sch h thngn C 3 s (schema) nhn dng cc bng

    danh sch h thngn SYSIBM: cha cc bng c s, ti u ho s

    dng cho DB2n SYSCAT: cc khung nhn (view) c s da trn

    cc bng SYSIBM, ti u s d s dngn SYSSTAT: cc s liu thng k trong CSDL

    ExampleSYSCAT.TABLESSYSCAT.INDEXESSYSCAT.COLUMNS

  • Lm vic vi cc i tng DL

    n Bng (Tables) khai bo bng tm thin L bng c to ra trong b nh, c s

    dng mt ng dng v t ng xo khi ng dng kt thc

    n Ch c th c truy cp bi ng dng to ra chng

    n Khng sinh ra cc bn ghi trong bng danh sch h thng

    n Hiu qu truy cp bng cao (khng b khohng, khng phi xc thc, khng ghi nht k)

  • Lm vic vi cc i tng DL

    n Bng (Tables) ct nh danh (identity)n L ct cc con s c to ra t ng, c gi

    tr duy nht trn mi dngn Ch ti a mt ct nh danh trn mt bngn To gi tr trn ct nh danh c 2 cch:

    n Lun c sinh ra: cc gi tr c sinh ra bi DB2, ng dng khng c php sinh gi tr

    n Sinh ra mc nh: gi tr c cung cp bi ng dng, hoc nu khng c th DB2 sinh ra. Khng m bo tnh duy nht ca d liu

  • Lm vic vi cc i tng DL

    n Bng (Tables) ct nh danh (identity)

  • Lm vic vi cc i tng DL

    n Bng (Tables) i tng tun t(sequence object)n i tng tun t sinh ra mt s duy nht,

    hot ng nh mt bng c lp

  • Lm vic vi cc i tng DL

    n Khung nhn (Views)n L s th hin d liu c lu tr trong

    bngn D liu s tn ti khi c gi tin Thng tin v khung nhn c cha trong

    SYSCAT.VIEWS, SYSCAT.VIEWDEP, SYSCAT.TABLES.

  • Lm vic vi cc i tng DL

    n Ch mc (Indexes)n L tp hp cc kho c sp xp theo mc

    cc dng trong bngn c im

    n Kiu ch mc tng hoc gimn Kho ca ch mc c th l duy nht hoc khngn Nhiu ct c th s dng lm ch mc

    n S dng cng c tr gip Design Advisor

  • Lm vic vi cc i tng DL

    n Ton vn tham chiu (Referential Integrity)n Cho php CSDL qun l c mi quan h

    gia cc bng

  • Tin ch di chuyn d liu

    n Tng quann Exportn Importn Load & Set Integrityn db2moven db2look

  • Tin ch di chuyn d liu

    n Tng quann Tin ch di chuyn d liu l cng c c

    s dng di chuyn d liu trong cng mt CSDL sang CSDL khc trn cng nn (platform) hoc khc nn

  • Tin ch di chuyn d liu

    n Tng quann ASC = ASCIIn DEL = Delimited ASCII d liu c lu tr

    di dng vn bn, c th m xem bng bt ktrnh son tho no

    n WSF = Worksheet Format nh dng c th di chuyn d liu sang bng tnh (Excel, Lotus123)

    n IXF = Integrated Exchange Format nh dng khng ch bao gm d liu m cn c ngn ng DDL (Data Definition Language). m bo c tnh y ca d liu

  • Tin ch di chuyn d liu

    n Exportn Kt xut d liu t bngn Lm vic vi IXF, DEL, WSFn C th thc hin bng cu lnh hoc Control

    Center

  • Tin ch di chuyn d liu

    n Importn Chn d liu t bng (tng ng cu lnh

    SQL Insert) Kch hot cc by (trigger), cc rng buc c hiu

    lc, s dng BUFFERPOOLn C th thc hin bng cu lnh hoc Control

    Center

  • Tin ch di chuyn d liu

    n Loadn Chn d liu t bng theo cch trc tipn Tc thc hin nhanh, khng s dng vng

    m, cc by khng c kch hot, rng buc khng c hiu lc

    n C th thc hin bng cu lnh hoc Control Center

  • Tin ch di chuyn d liu

    n db2moven C th lm vic vi c mt CSDLn Ch lm vic vi tp IXFn Khng c trong Control Center

    db2move sample exportdb2move sample import

  • Tin ch di chuyn d liu

    n db2lookn Trch rt d liu di dng cu lnh DDL, khng

    gian bng thnh tp kch bnn C th s dng cu lnh hoc Control Center

  • Qun tr C s d liun Kin trc ca DB2n Kt ni my khch DB2n Lm vic vi cc i tng d liun Di chuyn d liun Bo mt c s d liun Sao lu v phc hin Bo trn Truy cp ng thi v kho

  • Bo mt c s d liu

    n Tng quann Xc thc (authentication)n Quyn hn (authorization)n Nhm PUBLICn GRANT v REVOKE

  • Bo mt c s d liu

    n Tng quann DB2 s dng 2 cch

    xc thcn Dch v bo mt ngoin Kim sot truy cp

    bn trong ni tin Xc thc

    (authentication)n nh danh ngi s

    dng

  • Bo mt c s d liu

    n Tng quann Quyn hn

    (authorization)n Kim tra ngi s

    dng c xc thc c quyn hnthc hin thao tc

  • Bo mt c s d liu

    n Xc thc (authentication)

  • Bo mt c s d liu

    n Xc thc (authentication)n Tham s AUTHENTICATION trong DBM

    CFGn Cc gi tr:

    n SERVER (mc nh): xc thc ti my chn CLIENT: xc thc ti my khchn SERVER_ENCRYPT: xc thc ti my ch

    nhng c m hon SQL_AUTHENTICATION_DATAENC: xc thc

    ti my ch thm s kt ni phi m hon SQL_AUTHENTICATION_DATAENC_CMP:

  • Bo mt c s d liu

    n Quyn hn (authorization)n Quyn hn bao gm quyn (Authorities) v

    cc c quyn (Privileges)n c quyn l quyn cho php thc hin mt

    thao tc no trn CSDL (Insert, Create,)n Quyn l mt loi hnh ng bao gm nhiu

    c quyn

  • Bo mt c s d liu

    n Quyn hn (authorization)

  • Bo mt c s d liu

    n Quyn hn (authorization) cc cp

  • Bo mt c s d liu

    n Quyn hn (authorization)n C th cp quyn cho mt nhm ngi s

    dng trn OS, c th thit lp cc tham sSYSADM_GROUP, SYSCTRL_GROUP, trong DBM CFG theo nhm ca OS

    update dbm cfg using SYSADM_GROUP n Mi th hin c nhm quyn ringn Trn Windows, ngm nh nhm qun tr

    Windows c quyn SYSADM. Trn Linux, nhm ngi s hu th hin l SYSADM

  • Bo mt c s d liu

    n Quyn hn (authorization) DBADMn DBADM (quyn qun tr CSDL): ngi c

    quyn cao nht v qun tr mt CSDL. y khng c mt quyn c th

    connect to grant DBADM on database on user

    n Phi l quyn SYSADM mi thc hin c lnh gn ny

    n DBADM khng c quyn to khng gian bng v khng gian bng lin quan n containers (a) v vng m (b nh)

  • Bo mt c s d liu

    n Nhm PUBLICn L mt nhm bn trong DB2n Mi User c xc nhn bi OS hoc dch

    v chng thc u c ngm nh l thnh vin nhm PUBLIC

    n Mt s quyn c to sn cho nhm PUBLIC khi CSDL c to CONNECT, CREATE TAB, IMPLICIT_SCHEMA, BINDADD

    n C th hu quyn ca nhm PUBLIC tng tnh bo mt

  • Bo mt c s d liu

    n Lnh GRANT v REVOKE

  • Bo mt c s d liu

    n Lnh GRANT v REVOKEn C th kim tra quyn v vic cp quyn qua

    Control Center

  • Qun tr C s d liun Kin trc ca DB2n Kt ni my khch DB2n Lm vic vi cc i tng d liun Di chuyn d liun Bo mt c s d liun Sao lu v phc hin Bo trn Truy cp ng thi v kho

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Sao lu (backup)n Phc hi (recovery)

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Nht k CSDL ghi li cc hnh ng ca

    nhng giao dch (transactions). Trong trng hp s c, c th khi phc (playback/redo) nhng giao dch c thc hin

    n Vic ghi li nhng thay i trong CSDL vo nht k c thc hin sau lnh COMMIT

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Khng gian bng (tablespace) v nht k

    (log) u c ghi trn cng. Do , khuyn co l nn c ct trn nhng cng khc nhau

    n Khi c s thay i (gi s UPDATE), nhng trang d liu thay i s c ct trong vng m (b nh). Nhng gi tr c v mi s c ct trong Log (i khi th tc thi, i khi do mt vng m y)

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Nu thc hin COMMIT ngay sau UPDATE,

    tt c d liu c v mi s c ghi vo Log ngay lp tc

    n Khi iu kin tho mn, d liu thay i mi c ghi ln khng gian bng trn a

    n CHNGPGS_THRES: ch nh t l phn trm nhng trang thay i (dirty)

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Cc kiu nht k

    n Nht k s cp (LogPrimary): c cp pht sn

    n Nht k th cp (LogSecond): c cp pht khi cn thit v s c xo khi tt c cc kt ni n CSDL b ngt

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Cc kiu ghi nht k

    n Ghi vng tun t (Circular logging): khng lu tr ring, c th b ghi

    n Lu tr (Archival logging): khng b xo bt kni dung no, mt s thng tin c lu tronline, mt s c lu tr bn ngoi

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Cc kiu ghi nht k

    n Ghi vng tun t (Circular logging):

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Cc kiu ghi nht k

    n Ghi vng tun t (Circular logging): P1, P2, P3 l nht k s cp; S1, S2 l nht k th cp Khi c mt giao dch, nht k c ghi vo P1 v

    sau l P2, Nu c lnh COMMIT, thay i c ghi vo khng

    gian bng, P1, P2 c th c ghi li t u vkhng cn thit na

    Nu cha COMMIT m khng gian bng thiu, scp pht tip S1, S2. Khi giao dch vn tip tc m t ngng LOGSECOND th s xut hin thng bo li v giao dch s c quay lui (rollback)

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Cc kiu ghi nht k

    n Lu tr (Archival logging): Thit lp tham s LOGRETAIN l YES Tp nht k khng b xo, c th lu tr online

    hoc offline Nht k lu tr offline c th lu tr trn bng t m bo vic khi phc li nhng d liu c khi

    gp s c

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Cc kiu ghi nht k

    n Lu tr (Archival logging):

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Cu hnh nht k qua Control Center

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Cc tham s ca nht k

    n Logbufsz: kch thc b nh c s dng nh b m cho cc bn ghi nht k trc khi ghi ln a

    n Logfilsz: kch thc ca mi nht k cu hnh (4KB)

    n Logprimary: s bn nht k s cp vi kch thc logfilsz to

    n Logsecond: s tp nht k ph c to v sdng khi cn thit

  • Sao lu v phc hi

    n Nht k CSDL (Database Logging)n Cc tham s ca nht k (cont.)

    n Logpath/newlogpath: v tr cc nht k hot ng hoc lu tr trong tng lai

    n Mirrorlogpath: ng dn ca nht k nhn Loghead: tn tp nht k hot ng hin hnhn Userexit: cho php chng trnh Userexit thc

    hin sao chp nht k ngoi tuynn Softmax: gii hn s mt mt ca vic khi

    phc hngn Logretain: thit lp ch ghi nht k lu tr

  • Sao lu v phc hi

    n Sao lu (backup)n Cho php to ra mt bn sao CSDL ti thi

    im thc thiBACKUP DB sample TO C:\Backups

    n C th sao lu trc tuyn (ngi dng c thkt ni n CSDL khi ang sao lu) hoc ngoi tuyn (Offline ngi dng khng cth kt ni n CSDL khi ang sao lu)

    n C th thc hin trn Control Center

  • Sao lu v phc hi

    n Sao lu (backup)n V d v tn file c Backup

  • Sao lu v phc hi

    n Khi phc (Recovery)n L phc hi (restore) mt CSDL t phn d

    liu c sao lu (backup)n Phc hi d liu t cc bn ghi nht k

  • Sao lu v phc hi

    n Khi phc (Recovery)n Cc kiu khi phc CSDL

    n Khi phc d liu hng (crash/restart database): khi h thng gp s c v phi khi ng li, hthng kch hot lnh Restart Database phc hi cc giao dch khi trc m bo CSDL trng thi ph hp nht

    n Khi phc d liu theo phin bn: khi phc li CSDL t mt bn c sao lu (backup). CSDL s c tr li trng thi nh khi sao lu, v nhng giao dch sau b mt

  • Sao lu v phc hi

    n Khi phc (Recovery)n Cc kiu khi phc CSDL (cont.)

    n Khi phc d liu theo thi gian: cho php va s dng sao lu/ phc hi, va s dng lnh ROLLFORWARD xc nh thi im phc hi gip lm gim ti a mt mt d liu

  • Sao lu v phc hi

    n Khi phc (Recovery)n Khi phc CSDL

  • Sao lu v phc hi

    n Khi phc (Recovery)n Khi phc CSDL (mt s lu vi backup v

    restore)n Sao lu trn OS 32bit, phc hi trn OS 64n Khi phc c c CSDL ang tn tin To c CSDL mi t file backupn C th sao lu v khi phc theo khng gian

    bng, khng cn ton b CSDLn C kh nng khi phc d liu n mt a

    khc vi vng cn khi phc

  • Sao lu v phc hi

    n Khi phc (Recovery)n Khi phc CSDL (mt s lu vi backup v

    restore)n Cho php sao lu nhng thay i (delta) hoc

    tng dn (incremental)n C kh nng phc hi c nhng bng b xon Khng th sao lu OS ny v phc hi OS

    khc

  • Qun tr C s d liun Kin trc ca DB2n Kt ni my khch DB2n Lm vic vi cc i tng d liun Di chuyn d liun Bo mt c s d liun Sao lu v phc hin Bo trn Truy cp ng thi v kho

  • Bo tr

    n Tng quann REORGn RUNSTATSn REBIND

  • Bo tr

    n Tng quann Sau qu trnh thc hin, h thng CSDL c

    nhiu thay i. Bo tr nhm ti u ho li hthng nhm nng cao hiu sut

  • Bo tr

    n REORGn Sau qu trnh truy xut, bng v ch mc b

    phn mnhn REORG ti ghp mnh v t chc li d liu

    ti u hiu qu lu tr v truy xut tng bng.

    n C th trc tuyn (online) hay khng (offline)n Offline nhanh v ti u hn nhng khng cho

    php truy xut n bngn Online cho php truy xut n bng nhng s

    dng nhiu ti nguyn hn, ph hp bng nh

  • Bo tr

    n REORG

    n C th thc hin qua Control Center

  • Bo tr

    n RUNSTATS (thng s thng k)n DB2 c mt c ch ti u thng minh khai

    thc d liu hiu qu. thc hin cn c sliu thng k trc.

    n S liu thng k ca CSDL cn c cp nht (nh s lng ct, cc kiu DL ct, s lng bn ghi, kch thc ch mc, )

    n Do s lng thng k khng c cp nht t ng nn lnh RUNSTAT h tr cp nht nhng s liu thng k cho c ch ti u

  • Bo tr

    n RUNSTATS (thng s thng k)

    n C th thc hin qua Control Center

  • Bo tr

    n BIND/REBINDn p dng cho nhng ng dng nhng SQL,

    th tc lu tr SQL sau khi chy RUNSTAT

  • Bo tr

    n BIND/REBIND

  • Bo tr

    n La chn bo trn C 3 cch:

    n Th cngn To kch bn thc hin bo trn Bo tr t ng (cu hnh cho tng CSDL qua

    Control Center)

  • Qun tr C s d liun Kin trc ca DB2n Kt ni my khch DB2n Lm vic vi cc i tng d liun Di chuyn d liun Bo mt c s d liun Sao lu v phc hin Bo trn Truy cp ng thi v kho

  • Truy cp ng thi v kho

    n Tng quann Truy cp ng thin Khon Kho leo thang

  • Truy cp ng thi v kho

    n Tng quann Giao dch

    n Tp hp dng lnh m khi thc hin c coi nh cc cu lnh ring l

    n Nu mt trong nhng dng lnh tht bi coi nh ton b giao dch tht bi v cc dng lnh c thc hin n im tht bi s c quay lui (rollback) v gi tr ban u

    n Giao dch kt thc vi dng lnh COMMIT, vbt u mt giao dch mi

  • Truy cp ng thi v kho

    n Tng quann Giao dch

  • Truy cp ng thi v kho

    n Tng quann Truy cp ng thi

    n Nhiu ngi cng truy cp n cng mt CSDL ti cng thi im

    n Vic truy cp phi m bo tnh an ton v ton vn d liu

  • Truy cp ng thi v kho

    n Tng quann Truy cp ng thi

  • Truy cp ng thi v kho

    n Tng quann Kho

    n Kho c dng tm thi ngn nhng ng dng truy cp n khi thao tc kt thc

    n Nu s kho tng ln c ngha l s truy cp ng thi t i

    n Kho s t ng xut hin h tr mt thao tc v gii phng khi thao tc kt thc (Commit hoc Rollback)

  • Truy cp ng thi v kho

    n Tng quann Kho

    n C 2 loi kho Kho chia s (S share locks): c s dng khi

    ng dng mun c v ngn cn cp nht tnhng thao tc khc

    Kho dnh ring (X exclusive locks): c sdng khi mt ng dng mun cp nht, xo hay thm mt dng

  • Truy cp ng thi v kho

    n Tng quann Kho

  • Truy cp ng thi v kho

    n Truy cp ng thin DB2 c thit k cho nhiu ngi truy cpn Khi khng iu khin truy cp ng thi, c

    th pht sinh:n Mt d liu cp nhtn c khng cam ktn c khng lp lin c tha

  • Truy cp ng thi v kho

    n Truy cp ng thin Mt d liu cp nht: d liu ca ng dng sau

    lm thay i d liu ng dng trc

  • Truy cp ng thi v kho

    n Truy cp ng thin c khng cam kt: c d liu cha c cp

    nht hon ton

  • Truy cp ng thi v kho

    n Truy cp ng thin c khng lp li: khng cho d liu ging nhau

    sau nhng cu lnh thc hin nh nhau

  • Truy cp ng thi v kho

    n Truy cp ng thin c o: c thm nhng dng d liu khng c

    thc

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n DB2 cung cp cc mc khc nhau bo v sc lp d liu c vi khng cam kt (Uncommitted Read - UR) n nh con tr (Cursor Stability - CS) c n nh (Read Stability - RS) c lp li (Repeatable Read - RR)

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n c vi khng cam kt Cung cp mc c lp thp nht ng thi c mc

    truy nht ng thi cao nht Khng c s kho dng khi c nu khng c s

    thm nhp xo hoc sa mt bng hoc thao tc cp nht d liu

    Vn c ngn nga: mt d liu khi cp nht Vn tn ti: c vi khng cam kt, c khng

    lp li, c o

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n n nh con tr Cp c lp mc nh, to mt mc kho ti thiu Dng hin hnh ca con tr (cursor) s b kho Nu l dng ch c, kho s c gi cho n khi

    mt dng mi c ly hoc thao tc thc hin bngt

    Nu dng c cp nht, kho s c gi n khi thao tc thc hin kt thc

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n n nh con tr Vn c ngn nga: mt d liu khi cp nht,

    c vi khng cam kt Vn tn ti: c khng lp li, c o

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n c n nh Tt c cc dng trong phm vi ng dng lm vic

    u b kho Con tr truy cp s kho tt c cc dng tiu

    chun trong tp hp kt qu Mc kho va phi Vn c ngn nga: mt d liu khi cp nht,

    c vi khng cam kt, c khng lp li Vn tn ti: c o

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n c lp li Mc kho cao nht, truy cp ng thi thp nht Kho gi tt c cc dng ang c x l xy

    dng tp hp kt qu, nhng dng khng cn thit trong tp hp kt qu cui cng c th b kho

    Khng ng dng no c th thay i mt dng (thm, xo, sa) nu dng nh hng n tp hp kt qu cho n khi thao tc cng vic c hon tt

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n c lp li C ch ny m bo nhng cu truy vn tng t

    nhau ca cng mt ng dng s nhn c kt qu ging nhau ti cng mt thi im

    Vn c ngn nga: mt d liu khi cp nht, c vi khng cam kt, c khng lp li, c o

    Vn tn ti: khng cn

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n So snh cc mc c lp

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n t mc c lp C nhiu mc c lp

    Phin lm vic trong ng dng Kt ni Cu lnh

    Mc c lp bnh thng c xc nh ti phin lm vic hoc ti mc ng dng

    Khi khng ch r mc c lp, mc nh s dng con tr n nh

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n t mc c lp

  • Truy cp ng thi v kho

    n Truy cp ng thin Cc mc c lp

    n t mc c lp

  • Truy cp ng thi v kho

    n Kho leo thangn Mi kho trong DB2 s dng mt phn b

    nhn Khi b ti u cho rng tt hn l mt kho

    trn ton b bng thay v kho nhiu hng thxy ra s leo thang kho

  • Truy cp ng thi v kho

    n Kho leo thang

  • Truy cp ng thi v kho

    n Kho leo thangn C 2 tham s CSDL lin quan n kho

    n LockList: s lng b nh (trang 4K) d tr qun l nhng kho trong mi ng dng c ni. Trn Windows, mc nh l 50 ln ca trang (200K)

    n MaxLocks: phn trm cc i ca ton b danh sch kho cho mt ng dng (mc nh 22%)

  • Truy cp ng thi v kho

    n Kho leo thangn Vi nhng gi tr ngm nh, kho leo thang

    xut hin khi mt ng dng yu cu hn 44K trong tng s b nh kho (200K * 22%)

    n Tng gi tr ca 2 tham s s lm gim sxut hin thng xuyn ca kho leo thang

    n Kho leo thang khng tt cho hiu nng nhng lm gim xung t

    n Tp nht k:

  • Truy cp ng thi v kho

    n Ch kho (Lock wait)n Khi 2 hoc nhiu ng dng cn thc hin

    php ton trn cng i tng, mt trong s c th phi ch nhn c kho

    n Locktimeout (db cfg):n Ngm nh -1: ch v hnn Thi gian i c tnh bng giy

  • Truy cp ng thi v kho

    n B tc (deadlocks)n Xy ra khi hai hay nhiu ng dng cng kt

    ni n mt CSDLn Mi ng dng li chim dng mt phn ti

    nguyn m n ang phc v cho nhu cu khc

  • Truy cp ng thi v kho

    n B tc (deadlocks)n V d m phng tnh hung

    n M 2 ca s CLP (CLP1 v CLP2)n CLP1:

    db2 connect to sampledb2 +c update employee set firstnme = 'Mary' where

    empno = '000050+c: khng yu cu DB2 t ng cam kt lnh ny,

    gi li kho sau khi thc hin

  • Truy cp ng thi v kho

    n B tc (deadlocks)n V d m phng tnh hung

    n CLP2:db2 connect to sampledb2 +c update employee set firstnme = Tom where

    empno = 000030n CLP1:

    db2 +c select * from employee where empno = 000030

    n CLP2:db2 +c select * from employee where empno =

    000050

  • Truy cp ng thi v kho

    n Truy cp ng thi v thc tin kho tt nhtn Thng xuyn s dng COMMIT giao

    dch ngn nhtn Ch ghi nht k giao dch khi c yu cun Ty d liu s dng nhanh chng

    n Thc hin CSDL theo l/nhm

  • Truy cp ng thi v kho

    n Truy cp ng thi v thc tin kho tt nhtn t tham s LOCKTIMEOUT cho CSDL (30

    120), khng nn -1n Khng yu cu d liu nhiu hn cn thit

    trong mi thao tc ca ng dng

  • Pht trin ng dng

    n Cc th tc SQL PLn Hm ni tuyn (inline SQL PL), hm

    ngi dng t nh ngha (UDF), x l skin by li (triggers)

    n SQL/XML v Xqueryn Pht trin vi Ngn ng lp trnh

  • Pht trin ng dng

    n Cc th tc SQL PLn Hm ni tuyn (inline SQL PL), hm

    ngi dng t nh ngha (UDF), x l skin by li (triggers)

    n SQL/XML v Xqueryn Pht trin vi Ngn ng lp trnh

  • Th tc lu tr SQL PL

    n Tng quan v th tc lu trn IBM Data Studio

  • Th tc lu tr SQL PL

    n Tng quan v th tc lu tr

  • Th tc lu tr SQL PL

    n Tng quan v th tc lu trn Th tc lu tr l mt i tng CSDL, c

    th ng gi cc cu lnh SQL v nghip v

    n Lu tr hp l cho php nng cao hiu sut thc hin cng nh gim bng thng mng

    n Th tc lu tr c thc hin v qun l bi DB2

  • Th tc lu tr SQL PL

    n Tng quan v th tc lu trn Th tc lu tr c th c vit bng SQL

    PL, C/C++, Java, Cobol, ngn ng h trCLR (Common Language Runtime), OLE

    n Li ch ca Th tcn Bo mtn Hiu nng

    n Tp trung vo th tc SQL PL v tnh n gin v ph bin

  • Th tc lu tr SQL PL

    n IBM DATA STUDIOn L cng c h tr pht trin v qun l cc

    ng dng CSDLn c xy dng trn nn tng Eclipsen Giao din IDE cho php:

    n To, sa i v xo cc i tng CSDL trong DB2