1. Trang chủ
  2. » Giáo Dục - Đào Tạo

nhập môn hệ quản trị Cơ sở dữ liệu phần 6 pps

21 354 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 1,1 MB

Nội dung

Nhp môn H qun tr c s d liu DB2 105 Kch bn trên cn thit khi làm vic vi c s d liu trên các nn tng khác nhau nh Linux và Windows. Nu c hai máy ch u hot ng trên cùng mt nn tng, bn s, dùng nhng lnh sao lu d phòng và khôi phc s, làm cho x lý d0 dàng hn và rõ ràng hn. Nhng lnh sao lu và khôi phc s, c mô t chi tit hn trong chng sau ca cun sách này. Nhng ví d sau s, rút trích không gian bng và b trí vùng m d liu, cùng vi nhng lnh DDL t* c s d liu SAMPLE, và lu tr chúng trong tp sample.ddl. Chúng tôi khuyn khích bn chy lnh bên di và xem li tp kt qu xut (vn bn) “sample.ddl”. Lnh db2look có quá nhiu tùy ch&n không th mô t ht trong cun sách này; tuy nhiên bn có th s dng c -h  ly c phn mô t tóm lc các tùy ch&n s)n có: db2look -h Công c db2look c.ng có th c g&i t* trung tâm iu khin nh biu di0n trong Hình 9.6 Nhp môn H qun tr c s d liu DB2 106 Trong Hình 9.6 ch&n c s d liu mà bn mun ly DDL, nhn chut phi lên nó, và ch&n “Generate DDL”. Ca s Generate DDL xut hin, hin th mt s tùy ch&n rút trích, th hin nh trong hình 9.7. Nhp môn H qun tr c s d liu DB2 107 Bài tp nhanh #6 - Trích xut DDL t& c s d liu EXPRESS Mc tiêu: Khi bn sao lu mt c s d liu, mc tiêu ca bn là phi to li c s d liu bng cách n gin và hp lý. Thông thng s dng kch bn SQL, nó có th c thc hin sau khi DB2 c cài t. Trong bài t#p nhanh này, bn s, rút ra nhng nh ngh'a i tng t* c s d liu EXPRESS (ã to trong bài t#p nhanh #3) s dng Trung tâm iu khin. Quy trình: 1. M Trung tâm iu khin. 2. Nhn chut phi vào c s d liu EXPRESS trên cây i tng và ch&n mc Generate DDL. Vic này m ca s hp thoi Generate DDL. 3. Trong ca s Generate DDL, ch- rõ nhng tùy ch&n cho Generate DDL nh di ây. Nu bn to ra thêm nhng i tng b sung trong môi trng ca bn nh không gian bàng, b m , bn s, ch&n chúng  ây. Khi bn không to ra bt k loi i tng nào, *ng ánh du vào hp kim. Thng kê c s d liu không c thêm vào vì môi trng sn xut có kh nng cha mt t#p hp thng kê khác hn môi trng phát trin. Tng t, nhng thông s cu hình s, có kh nng khác i mt chút. Trong môi trng mà bn s hu, nu m&i th cu hình chính xác theo cách nó c trin khai, bn có th ch&n thêm vào cái tùy ch&n b sung. 4. Chuyn qua trang Object. Bn có th ch- nh ch&n nhng i tng mà bn mun phát sinh ra DDL. Trong trng hp này, ch&n ngi dùng và gin + mà bn dùng  to ra tt c các i tng ca bn và phát sinh ra DLL cho tt c các i tng trong gin + này. Nhn nút Generate  bt u to DLL. Nhp môn H qun tr c s d liu DB2 108 5. Xem li kt qu DDL. Kt qu ca bc thc hin trc là mt kch bn vi tt c các câu lênh SQL cho các i tng c ch&n. Bn s, t chc các kch bn này vào trong nhng nhóm hp lý. 6. To th mc C:\express trong t#p tin h thng và lu t#p tin phát sinh DDL vào trong th mc này vi vi tên là schema.ddl, Nhn nút “Save”. 7. M tp c lu gn ây nht trong ca s nh#p lnh. (Gi ý: t* ca s nh#p lnh, ch&n File -> Open) 8. Mc dù chúng tôi ch- thc s mun DDL ca các bng, bn s, thy các DDL cho c nhng i tng khác na c.ng c sinh ra. Chuyn tt c nhng khai báo CREATE TRIGGER ti mt tp mi riêng bit c g&i là triggers.ddl. Th#m chí dù chúng tôi ch- to ra có mt b%y s kin c.ng  riêng ra, nó là mt thói quen tt  phân bit các i tng theo kiu ca nó. 9. Bây gi chúng tôi c.ng khuyn cáo loi b": Nhp môn H qun tr c s d liu DB2 109 • Các lnh c s d liu CONNECT TO. • Các lnh DISCONNECT. Bn phi có hai kch bn ti im này: C:\express\schema.ddl DDL cho các bng, các cách hin th, các ch- mc và các ràng buc. C:\express\triggers.ddl DDL cho các b%y s kin 10. Chu n b kch bn cho s trin khai: • Xóa nhng chú thích không cn thit (ví d: CONNECT TO…) • Tách các hàm và các th tc vào nhng tp tin riêng (rt hu dng khi có quá nhiu hàm và th tc). Bn c.ng có th nhóm chúng li theo chc nng hay ng dng (ví d: stringfunc.ddl, billing.ddl, math.ddl, , …) 11. Bn có th phi chú ý n nhng kí t c bit c dùng  gii hn kt thúc các b%y, các hàm và các th tc (@). /iu ó là cn thit  t gii hn kt thúc ca lnh CREATE <••i t••ng> khác vi kt thúc ca mt khai báo th tc nm bên trong i tng. Nhp môn H qun tr c s d liu DB2 110 10 Chng 10 – Bo mt c s d liu Chng này bàn v s bo m#t c x lý nh th nào trong DB2. Hình 10.1 cung cp mt cái nhìn tng quan c bn Hình 10.1 – Tng quan v s bo mt trong DB2 Nh trong hình 10.1, s bo m#t DB2 có hai phn: *$nh danh Nó là mt tin trình qua ó kim tra tính hp l ca thông tin ng nh#p ca ngi dùng. Tin trình nh danh c thc thi bi mt chng trình bo m#t bên ngoài DB2 (in hình là bi mt h iu hành, mt phng thc nh danh ca mt mng nào ó, hoc là mt phn mm nh danh c thit k theo yêu cu). Tin trình nh danh ca h iu hành c xác l#p mc nh. Khi s dng tin trình nh danh ca h iu hành, tên ngi dùng (userid) và m#t mã c chuyn ti c s d liu  máy ch (nh là mt phn ca câu lnh kt ni). Sau ó, c s d liu  máy ch s, g&i tin trình nh danh ca h iu hành  kim tra tính hp l ca tên ngi dùng và m#t mã. Quyn hn 4 phn này, DB2 kim tra xem ngi dùng, ã qua nh danh  trên, có th thi hành thao tác ngi ó yêu cu hay không. Thông tin v quyn hn c lu tr trong mt danh mc DB2 và mt t#p tin cu hình DBM. Ví d, trong hình 10.1, ngi dùng ‘bob’ kt ni vi c s d liu SAMPLE bng câu lnh : CONNECT TO sample USER bob USING pwd C “bob” và “pwd” c chuyn ti h iu hành hoc mt chng trình nh danh bên ngoài  kim tra xem tên ngi dùng “bob” ã c nh ngh'a cha và m#t mã ó có Nhp môn H qun tr c s d liu DB2 111 c ni vi ngi dùng này hay không. Nu phn này thành công, h iu hành s, tr li quyn kim soát bo m#t cho DB2. Tip theo, khi ngi dùng “bob” thi hành lnh sau: SELECT * FROM mytable By gi DB2 tip tc dùng quyn kim soát bo m#t  thi hành vic kim tra quyn hn và xác nh#n ngi dùng “bob” có quyn SELECT trên bng “mytable” hay không. Nu quyn ó không hp l, DB2 s, tr v mt thông báo li, ngc li câu lnh s, c thc thi da trên bng “mytable”. 10.1 *$nh danh Mc dù tin trình nh danh thc s c thc hin bi h iu hành (hoc mt chng trình bo m#t khác bên ngoài), DB2 v%n quyt nh tng mà tin trình nh danh xy ra. Tham s AUTHENTICATION trong DBM CFG, thit l#p  máy ch DB2, có mt dãy các giá tr hp l. Ví d khi tham s c thit l#p là SERVER (giá tr mc nh), tin trình nh danh s, c thc thi bi h iu hành hoc chng trình bo m#t bên ngoài  trên máy ch.Tuy nhiên, nu AUTHENTICATION c thit l#p là CLIENT, tin trình nh danh s, c thc thi bi h iu hành hoc chng trình bo m#t bên ngoài  trên máy khách. Vn  này c minh h&a  hình 10.2 Hình 10.2 – Ni tin trình $nh danh xy ra Tham s AUTHENTICATION có th c thit l#p bng mt trong nhng giá tr c kit kê trong bng 10.1 Lnh Mô t SERVER (mc nh) tin trình nh danh di0n ra  máy ch CLIENT tin trình nh danh di0n ra  máy khách SERVER_ENCRYPT tng t nh SERVER nhng tên ca ngi dùng và m#t mã c mã hóa KERBEROS tin trình nh danh di0n ra dùng c ch bo m#t Kerberos SQL_AUTHENTICATION_DATAENC tin trình nh danh máy ch cng thêm s kt ni phi dùng s mã hóa Nhp môn H qun tr c s d liu DB2 112 d liu SQL_AUTHENTICATION_DATAENC_CMP ging nh  trên nhng s mã hóa d liu ch- dùng khi có s)n GSSPLUGIN tin trình nh danh dùng c ch bo m#t bên ngoài da trên GSS API Bng 10.1 - Nhng giá tr$ tham s AUTHENTICATION hp l 10.2 Quyn hn Quyn hn bao g+m các c quyn và quyn c lu tr trong nhng bng h thng DB2 và c DB2 qun lý. Mt c quyn cho phép ngi dùng thi hành mt loi thao tác n da trên c s d liu nh là CREATE, UPDATE, DELETE, INSERT, …. Mt quyn là mt hành ng c xác nh trc bao g+m nhiu c quyn. Hình 10.3 minh h&a các quyn và c quyn khác nhau trong DB2. Nhp môn H qun tr c s d liu DB2 113 Hình 10.3 - Nhng quyn và c quyn Bng 10.2 nêu ra nhng hàm khác nhau mà mi quyn có th thc hin. Nh bn thy SYSADM có hu ht các quyn trong khi SYSMON có ít quyn nht. Chc n ng SYSADM SYSCTRL SYSMAINT SYSMON DBADM LOAD Cp nht DBM CFG Y Cp phép/Hy b+ DBADM Y Thit lp/Thay i SYSCTRL Y Thit lp/Thay i SYSMAINT Y Thit lp/Thay i SYSMON Y Buc ngi dùng ra kh+i c s d liu Y Y Nhp môn H qun tr c s d liu DB2 114 To/B+ c s d liu Y Y Khôi phc thành c s d liu mi Y Y Cp nht DB CFG Y Y Y Sao lu c s d liu/không gian bng Y Y Y Khôi phc thành c s d liu ã tn ti Y Y Y Khôi phc tin Y Y Y Bt u/kt thúc mt th hin Y Y Y Phc hi không gian bng Y Y Y Thc hin theo vt Y Y Y Y Ly hình nh màn hình Y Y Y Truy vn trng thái không gian bng Y Y Y Lc bt tp tin nht ký Y Y Y Quiesce không gian bng Y Y Y Y Y Np bng Y Y Y Thíêt lp/g/ b+ trng thái treo Y Y To/hy b+ s kin màn hình Y Y Bng 10.2 – Các quyn và c quyn DB2 / cp quyn SYSADM, SYSCTRL, hoc SYSMAINT cho mt nhóm, nhng tham s SYSADM_GROUP, SYSCTRL_GROUP, hoc SYSMAINT_GROUP trong DBM CFG phi c gán cho nhóm h iu hành Ví d,  cp quyn SYSADM cho nhóm h iu hành ‘db2admns’, bn có th dùng câu lnh này: update dbm cfg using SYSADM_GROUP db2admns Mi th hin DB2 có nhng nh ngh'a v nhóm quyn riêng. Trên Windows, nhng tham s này c mc nh là rng, iu ó có ngh'a là nhóm nhng ngi qun tr Windows là SYSADM. Trên Linux, nhóm nhng ngi s hu th hin c mc nh là nhóm SYSADM. 10.3 Quyn qun tr$ c s d liu DBADM DBADM (DataBase ADMinistrator) là ngi có quyn cao nht v qun tr c s d liu. /ây không phi là quyn  cp  c th; do ó không c nêu ra trong phn trc. / gán quyn qun tr c s d liu DBADM, ta s dng lnh GRANT, thí d: connect to sample grant DBADM on database to user <userid> [...]... p1 TO USER user1 H y b" quy n EXECUTE trên th t c p1 c a ng i dùng USER1: REVOKE EXECUTE ON PROCEDURE p1 FROM USER user1 10 .6 Ki m tra vi c c p quy n và quy n Cách t t nh t ki m tra vi c c p quy n và ki m tra quy n là thông qua trung tâm i u Nh p môn H qu n tr c s d li u DB2 1 16 khi n Hình 10.4 mô t cách m h p tho i Table Privileges cho b ng EMPLOYEE t* trung tâm i u khi n Hình 10.4 – M h p tho i Privileges... ti p tùy ch&n Advanced và nh n OK B o m khung nhìn làm vi c hi n t i ch Advanced 5 M r ng cây i t ng c a Trung tâm i u khi n Database -> EXPRESS -> Tables bên trái c a s , ch&n All Nh p môn H qu n tr c s d li u DB2 119 6 Phân nh ng quy n c n có cho ng i dùng v*a m i t o ra: T* danh sách các b ng trong c s d li u EXPRESS, nh n chu t ph i lên b ng CUSTOMERS và ch&n m c Privileges hi n th c a s h i tho... nhiên, ng d ng c a b n có th ch a ng nhi u ki u ng i dùng khác Th nghi m t o ra nh ng ng i dùng khác và Nh p môn H qu n tr c s d li u DB2 gán cho nó nh ng c quy n B n c ng có th t o ra nh ng nhóm c a các ng quy n cho các nhóm ó, h n là làm v i m i ng i dùng riêng l 120 i dùng và phân Nh p môn H qu n tr c s d li u DB2 121 11 Ch ng 11 – Sao l u và khôi ph c Trong ch ng này chúng ta th o lu#n v nh#t... dùng b xóa kh"i nhóm, ng i này s, m t các quy n ng m nh c a nhóm, nh ng v%n còn gi các quy n c gán t ng minh Nói m t cách khác các quy n c c p m t cách t ng minh ph i c h y b" m t cách t ng minh Nh p môn H qu n tr c s d li u DB2 118 Bài t p nhanh # 7: Cho phép và h y b+ (phân quy n) quy n ng is d ng M c tiêu: Cho n lúc này, b n ã s d ng m t tài kho n c a ng i qu n tr cho vi c s d ng các l nh v i c...Nh p môn H qu n tr c s d li u DB2 115 Trong thí d trên, tr c h t b n c n k t n i n c s d li u, ây c s d li u có tên là “sample”, và sau ó gán quy n DBADM cho ng i dùng / có th gán quy n qu n tr c s d li u DBADM,... p ph i chu t vào b ng này và ch&n Privileges M t khi c ch&n, h p tho i Privileges hi n th nh hình 10.5 Hình này có mô t các tr ng và các thành ph n c a h p tho i Hình 10.5 – H p tho i Privileges Nh p môn H qu n tr c s d li u DB2 117 M t cách khác, b n có th truy v n các th hi n danh m c DB2 SYSCAT là n i ch a các thông tin v vi c c p quy n Ví d , n u b n mu n bi t ng i dùng DB2ADMIN có quy n SELECT... giá tr c và m i s, c l u tr trong nh ng t#p tin nh#t ký c s d li u, ôi khi t c th i, ôi khi m t vùng m nh#t ký y N u câu l nh COMMIT c thi hành sau câu l nh UPDATE thì nh ng giá tr c và m i s, c Nh p môn H qu n tr c s d li u DB2 122 c t trong nh ng t#p tin nh#t ký ngay l#p t c X lý này c.ng c l p l i t ng t cho câu l nh SQL khác truy xu t n c s d li u Khi i u ki n c c th th"a mãn, nh là vi c t n ng... a c COMMIT, thì m t nh#t ký th c p c c p phát (S1 trên hình v,) m t cách t ng N u giao d ch v%n còn ti p t c, nhi u nh#t ký th c p c c p phát cho n khi s nh#t ký th c p c c p phát t ng (ng t i a Nh p môn H qu n tr c s d li u DB2 LOGSECOND N u v%n ch a phát nh#t ký và giao d ch s, 123 , m t thông i p l i ch- ra i u ki n h t kh n ng c p c quay lui (h+i x ) 11.3.2 Nh t ký l u tr Nh#t l u tr c.ng c bi... Ghi l u tr 11.4 Nh t ký c s d li u t& Trung tâm i u khi n B n có th c u hình nh#t ký c s d li u t* trung tâm i u khi n b ng cách nh n chu t ph i trên c s d li u và ch&n “Configure Database Logging” Nh p môn H qu n tr c s d li u DB2 Hình 11.4 - Nh t ký c s d 124 li u t& Trung tâm i u khi n Hình 11.5 th hi n màn hình thi t l#p c u hình nh#t ký c s d li u, t i ây ta có th ch&n ki u ghi nh#t ký quay vòng... u tr Hình 11.5 - Ghi nh t ký c s d 11.5 Các tham s c a nh t ký Có nh ng tham s DB CFG liên quan danh sách các tham s chính li u theo h ng d%n t&ng b c n vi c t o b n ghi nh#t ký B ng 11.1 li t kê Nh p môn H qu n tr c s d li u DB2 125 Tham s Mô t logbufsz L ng b nh c s d ng nh m t b nh#t ký tr c khi ghi chúng vào 'a logfilsz Kích th logprimary S b n nh#t ký chính v i kích th logsecond S t p nh#t ký ph . c g&i t* trung tâm iu khin nh biu di0n trong Hình 9 .6 Nhp môn H qun tr c s d liu DB2 1 06 Trong Hình 9 .6 ch&n c s d liu mà bn mun ly DDL, nhn chut phi. USER user1 10 .6 Kim tra vic cp quyn và quyn Cách tt nht  kim tra vic cp quyn và kim tra quyn là thông qua trung tâm iu Nhp môn H qun tr c s d liu DB2 1 16 khin. Hình. s tùy ch&n rút trích, th hin nh trong hình 9.7. Nhp môn H qun tr c s d liu DB2 107 Bài tp nhanh #6 - Trích xut DDL t& c s d liu EXPRESS Mc tiêu: Khi

Ngày đăng: 08/08/2014, 20:21

w