intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

oracle9i kiến trúc và quản trị_6

Chia sẻ: Thao Thao | Ngày: | Loại File: PDF | Số trang:19

52
lượt xem
8
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tham khảo tài liệu 'oracle9i kiến trúc và quản trị_6', công nghệ thông tin, cơ sở dữ liệu phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Chủ đề:
Lưu

Nội dung Text: oracle9i kiến trúc và quản trị_6

  1. www.updatesofts.com 9.2.2. Tablespaces read-only / read-write Tablespaces read-only M c ích chính c a vi c s d ng các tablespaces read-only (ch c) là h n ch các th t c c n thi t khi th c hi n sao lưu và ph c h i m t ph n l n d li u không b thay i (static) c a database. Oracle không th c hi n c p nh t các files n m trong tablespace read-only, vì th các files có th ưc t trong thi t b ch c như CD ROMs hay ĩa WORM drives (Write Once-Read Many). M i khi t o m i m t tablespace, h th ng s t o cho ta m t tablespace có c quy n c và quy n ghi. Ta có th thay i l i thu c tính tablespace thành read-only thông qua m nh READ ONLY trong câu l nh ALTER TABLESPACE. Vi c này s d n t i t t c các datafiles thu c tablespace ó s ư c t l i thu c tính là read-only. Câu l nh ALTER TABLESPACE ... READ ONLY s t tablespace vào ch chuy n ti p (transitional read-only) và ch cho t t c các transactions trên ó k t thúc (commit ho c roll back). Ch chuy n ti p này s không cho phép b t kỳ m t thao tác ghi m i nào ư c th c hi n trên tablespace ngo i tr vi c rollback các transactions hi n th i và thay id li u trong các blocks trong tablespace. Do ó, ch chuy n ti p c a tablespace cũng h t như tablespace read-only i v i các câu l nh m i c a ngư i dùng ngo i tr l nh ROLLBACK. Sau khi t t c các transactions hi n th i ã k t thúc thì câu l nh ALTER TABLESPACE ... READ ONLY m i ư c xem là k t thúc và tablespace ư c t ch read-only. t ch read-only cho tablespace không làm nh hư ng t i tr ng thái offline hay online c a tablespace ó. Các Offline datafiles v n không th truy xu t ư c. Vi c ưa m t datafile trong tablespace read-only vào ch online s cho phép user có th c d li u trong file ó. File này v n không th vi t d li u vào tr phi tablespace tương ng ư c t l i ch cho phép c và ghi. Read-only tablespaces không th b s a i. c p nh t d li u trong m t read-only tablespace, trư c tiên ta c n t l i ch cho tablespace là read-write. Sau ó, th c hi n c p nh t d li u trong tablespace r i t l i ch read-only cho tablespace ó. Do các read-only tablespaces không b s a i nên ta cũng không c n thi t ph i th c hi n vi c backup d li u trên nó nhi u l n. Và ta cũng không c n thi t ph i ph c h i l i các read- only tablespaces, do d li u trong ó không b thay i. Ta không th b sung các datafiles vào tablespace read-only, ngay c khi ã t ch cho tablespace là offline. B i vì, khi b sung m t datafile, Oracle s ph i c p nh t ph n thông tin header trong khi ó thao tác ghi lên tablespace này là không ư c phép. Tablespace read-write Trái v i tablespace read-only, v i các tablespace read-wirte, ta có th th c hi n các thao tác c và ghi trên ó. Ta cũng có th s d ng m nh READ WRITE trong câu l nh ALTER TABLESPACE thay i tr ng thái tablespace read-only thành tr ng thái read-write. 9.2.3. Temporary tablespace / permanent tablespace Temporary tablespaces ư c s d ng dành riêng cho các thao tác s p x p d li u. Trong temporary tablespace không có b t c segments d li u nào n m trong ó. ORACLE 9i – Ki n trúc và Qu n tr Trang 96
  2. www.updatesofts.com Sort segments có th cùng ư c chia s s d ng khi nhi u thao tác s p x p cùng ư c th c hi n. M t sort segment ư c s d ng cho t t c các instance có th c hi n thao tác s p x p trên m t tablespace. Vi c s d ng các temporary tablespaces cho phép nâng cao hi u su t th c hi n m i khi có nhi u thao tác s p x p ư c th c hi n trên m t vùng nh l n và không phù h p v i kích thư c c a b nh trong c a máy tính. Sort segment thu c temporary tablespace ư c t o ra vào ngay th i i m u c a thao tác s p x p. Sort segment s ư c c p thêm vùng nh và m r ng d n cho t i khi kích thư c c a segment ngang b ng ho c l n hơn t ng s kích thư c lưu tr c n thi t cho vi c th c hi n t t c các thao tác s p x p c a instance. Các tablespaces không ph i là temporary tablespaces ư c g i là các permanent tablespaces. Các permanent tablespace ư c s d ng lưu tr d li u trong database. 9.3.QU N LÝ KHÔNG GIAN TRONG TABLESPACES Tablespaces c p phát vùng không gian theo các extents. Tablespaces s d ng hai phương pháp khác nhau c p phát và gi i phóng vùng không gian lưu gi : Qu n lý các extents qua data dictionary (dictionary-managed tablespaces) Qu n lý các extents qua tablespace (locally-managed tablespaces) Ngay khi t o tablespace, ta c n l a ch n luôn phương pháp qu n lý vùng không gian s ư c áp d ng cho tablespace ó. Khi ã ch n r i, ta không th thay i phương pháp qu n lý không gian n a. 9.3.1. Dictionary-Managed Tablespaces Trong phương pháp này tablespace s d ng data dictionary qu n lý các extents c a nó. Oracle c p nh t t ng tables trong data dictionary m i khi c p phát, gi i phóng hay s d ng l i m t extent. Oracle cũng lưu l i các thông tin rollback c a vi c c p nh t các dictionary tables. Theo m c nh, phương pháp qu n lý này s ư c áp d ng cho các tablespaces có trong database. Trong các phiên b n Oracle 8.0 ho c s m hơn, ch có m t phương pháp ó chính là phương pháp này. 9.3.2. Locally-Managed Tablespaces Bên c nh ó, tablespace cũng có th qu n lý các extents c a nó thông qua m t bitmap (ánh x bit) trong t ng datafile t ó xác nh ư c tr ng thái c a các blocks trong datafile là ang s d ng hay ã ư c gi i phóng. M i m t bit trong bitmap s tương ng v i m t block hay m t nhóm các blocks. M i khi có m t extent ư c c p phát, gi i phóng hay tái s d ng, Oracle s thay i giá tr c a bitmap theo úng như tr ng thái m i c a các blocks. Vi c thay i này s không làm phát sinh các thông tin trong rollback do không có thao tác c p nh t d li u nào trong các tables c a data dictionary (Ngo i tr trư ng h p c bi t liên quan n các thông tin h n m c (quota) c a tablespace). Locally-managed tablespaces có m t s ưu i m hơn so v i dictionary-managed tablespaces là: Qu n lý c c b các extents tránh các thao tác qu n lý không gian theo ki u quy. Vi c này có th x y ra khi s d ng phương pháp dictionary-managed tablespaces n u vi c s d ng hay gi i phóng không gian là k t qu c a các thao tác s d ng hay gi i phóng không gian trong rollback segment hay data dictionary table. ORACLE 9i – Ki n trúc và Qu n tr Trang 97
  3. www.updatesofts.com Qu n lý c c b các extents m t cách t ng các vùng không gian gi i phóng li n k v i nhau. i u này là c n thi t khi th c hi n công vi c h p nh t các extents r i. Kích thư c c a các extents ư c qu n lý c c b có th ư c xác nh t ng b i h th ng. M t khác, t t c các extents có th có cùng m t kích c như nhau trong phương pháp locally-managed tablespace. M nh LOCAL trong ph n EXTENT MANAGEMENT c a câu l nh CREATE TABLESPACE s ch rõ phương th c qu n lý không gian: V i các permanent tablespaces và temporary tablespaces, ta có th s d ng m nh EXTENT MANAGEMENT LOCAL. Trong phiên b n 8i, phương pháp qu n lý này v n chưa ư c áp d ng cho tablespace SYSTEM. N u áp d ng, h th ng s phát sinh l i 809225. 9.4.THI T L P TR NG THÁI CHO TABLESPACES Qu n tr viên database có th thi t l p tr ng thái cho các tablespaces là online (có th s d ng) hay offline (không th s d ng) ngo i tr tablespace SYSTEM m i khi m database. Tablespace SYSTEM luôn tr ng thái online m i khi database ư c m b i vì Oracle luôn ph i s d ng các d li u trong dictionary. M t tablespace thông thư ng ch online khi ó, các d li u trong nó là s n sàng i v i các database users. Tuy nhiên, qu n tr viên database có th t ch offline cho tablespace: Khi này m t ph n c a database s không th truy xu t ư c, trong khi ph n còn l i v n có th truy xu t bình thư ng. Th c hi n offline tablespace khi backup d li u (m c dù ta v n có th backup d li u ngay khi database ang ch y và các tablespace tr ng thái online). Lưu ý: ta không th t ch offline cho tablespace n u nó có ch a các rollback segments ang ư c s d ng. t Offline cho tablespace Khi m t tablespace ư c ưa ra offline, Oracle s không cho phép th c hi n các câu l nh SQL có tham chi u t i các objects lưu tr trong tablespace này. Oracle lưu l i các d li u rollback tương ng khi th c hi n câu l nh SQL trong m t rollback segment khác có trong tablespace SYSTEM thay vì là rollback segment có trong tablespace ư c offline n u có. Tablespace ư c ưa v online tr l i, Oracle s áp l i các d li u rollback ang có trong tablespace SYSTEM vào tablespace ó. Ta ch có th ưa m t tablespace thành online trong chính database mà nó ư c t o, không th t online cho tabalespace trong m t database khác ư c. Vi c này ư c giám sát b i các thông tin có trong dictionary. Oracle t ng th c hi n chuy n ch t online thành offline i v i tablespaces m i khi x y ra s c h th ng. Ví d như: ti n trình DBWn g p l i. 9.5.TRAO I CÁC TABLESPACES GI A DATABASES Ta có th s d ng ch c năng transportable tablespaces d ch chuy n m t ph n c a m t database sang m t database Oracle khác. Vi c trao i các tablespaces gi a các database là r t h u ích cho: ORACLE 9i – Ki n trúc và Qu n tr Trang 98
  4. www.updatesofts.com Vi c d ch chuy d li u t h th ng x lý tr c tuy n (OLTP – online transaction processing systems) sang thành d li u c a h th ng kho d li u (data warehouse staging systems). C p nh t kho d li u (data warehouses) và các d li u thu c h th ng. N p các d li u t các kho cơ s d li u trung tâm (central data warehouses). Lưu tr các d li u c a h th ng OLTP and data warehouse systems efficiently. Cung c p d li u cho các khách hàng ho c ngư i s d ng n i b . D ch chuy n d li u thông qua vi c trao i các tablespaces cho phép di chuy n d li u nhanh chóng và hi u qu hơn các cách d ch chuy n d li u khác như export/import hay unload/load i v i cùng m t d li u, Do vi c trao i các tablespace ch òi h i ph i sao chép các datafiles r i tích h p thông tin v c u trúc c a tablespace vào database m i. Có th s d ng phương pháp trao i các tablespaces d ch chuy n các index data, do ó, tránh vi c tái t o l i (rebuilds) các index, ta có th th c hi n công vi c này n p d li u trong các b ng. 9.5.1. M t s h n ch trong vi c trao i các tablespace: Database ngu n và ích ph i ư c ch y trên cùng m t n n ph n c ng (hardware platform). Ví d , có th trao i các tablespaces gi a database Oracle ch y trên h i u hành Sun Solari, ho c trao i các tablespaces gi a các databases Oracle ch y trên h i u hành NT. Tuy v y, ta không th trao i các tablespace gi a database Oracle chay trên SUN Solaris v i các database Oracle ch y trên NT. Database ngu n và ích ph i có cùng m t kích thư c c a data block. Database ngu n và ích ph i s d ng cùng m t t p ký t s d ng trong database (national character set). Không th chuy n i tablespace sang database ích khi database này ã có m t tablespace có cùng tên. Vi c chuy n i tablespaces không ư c h tr : o Snapshot/replication o Function-based indexes o Scoped REFs o Domain indexes (M t ki u index m i, cho phép m r ng vi c ánh ch s ) 9.5.2. Các bư c th c hi n chuy n i m t tablespace gi a các database 1. Ch có th th c hi n trao i các tablespaces mà nó không ch a các tham chi u t i tablespace khác. 2. T o m t transportable tablespace set. Transportable tablespace set ch a các datafiles ng v i t p các tablespaces ư c s d ng chuy n i các file có ch a thông tin c u trúc c a các tablespaces d ch chuy n. (Xem minh ho vi c t o m t transportable tablespace set phia dư i). 3. Chuy n i tablespace. Sao chép các datafiles và export file sang database ích. Có th s d ng các công c sao chép file thông thư ng c a h i u hành th c hi n công vi c này ORACLE 9i – Ki n trúc và Qu n tr Trang 99
  5. www.updatesofts.com 4. ưa tablespace vào s d ng (plug-in). Th c hi n công vi c Import ưa các tablespaces vào database ích. Minh ho vi c trao i tablespace 1. bi t tablespace SALES_1 và SALES_2 có ch a các tham chi u trong nó không, ta th c hi n câu l nh: EXECUTE dbms_tts.transport_set_check('sales_1,sales_2', TRUE); Câu l nh này sinh ra k t qu và lưu trong view có tên là: TRANSPORT_SET_VIOLATIONS. S d ng câu l nh truy v n xem k t qu : SELECT * FROM transport_set_violations; L nh truy v n k t xu t k t qu r ng cho bi t tablespace không ch a các tham chi u t i tablespace bên ngoài. 2. T o transportable tablespace set Phát l nh thay i tr ng thái c a tablespace v tr ng thái read-only không cho phép c p nh t d li u vào tablespace này, chu n b cho vi c trao i tablespace. ALTER TABLESPACE sales_1 READ ONLY; S d ng công c ti n ích Export c a Oracle k t xu t các tablespace này: EXP TRANSPORT_TABLESPACE=y TABLESPACES=(sales_1,sales_2) TRIGGERS=y/n CONSTRAINTS=y/n GRANTS=y/n FILE=expdat.dmp TRIGGERS=Y – cho phép k t xu t; N – không cho phép k t xu t. GRANTS=Y – k t xu t c các quy n trên m i b ng thu c tablespace ó; N – không k t xu t. CONSTRANTS=Y – các ràng bu c tham chi u s ư c k t xu t; N – không k t xu t các ràng bu c tham chi u. 3. Th c hi n sao chép các datafile c a tablespace v a ư c k t xu t ra m t v trí khác. 4. t l i tr ng thái bình thư ng cho tablespace v a ư c xem xét. ALTER TABLESPACE sales_1 READ WRITE; 5. ưa b n sao c a các datafile v a ư c sao chép vào v trí tương ng v i database ích. 6. Connect vào database m i v i m c quy n SYSDBA. 7. ưa các tablespaces ã ư c k t xu t vào database m i IMP TRANSPORT_TABLESPACE=y DATAFILES=('c:\db\sales_jan','c:\db\sales_feb',...) TABLESPACES=(sales_1,sales_2) TTS_OWNERS=(dcranney,jfee) FROMUSER=(dcranney,jfee) TOUSER=(smith,williams) FILE=expdat.dmp 9.6.T O TABLESPACE 9.6.1. L nh t o tablespace Ta có th s d ng câu lênh SQL t o m t tablespace. Cú pháp: CREATE TABLESPACE tablespace ORACLE 9i – Ki n trúc và Qu n tr Trang 100
  6. www.updatesofts.com DATAFILE filespec [autoextend_clause] [, filespec [autoextend_clause]]... [MINIMUM EXTENT integer[K|M]] [DEFAULT storage_clause] [PERMANENT|TEMPORARY] [ONLINE|OFFLINE] storage_clause:= = STORAGE ( [INITIAL integer[K|M]] [NEXT integer[K|M]] [MINEXTENTS integer] [MAXEXTENTS {integer|UNLIMITED}] [PCTINCREASE integer] ) V i: tablespace tên c a tablespace ưcto DATAFILE tên data files c a tablespace ưcto DEFAULT STORAGE tham s lưu tr m c nh cho t t c các i tư ng ư c t o l p trong tablespace MINIMUM EXTENT kích thư c t i thi u c a extent ưcs d ng value ONLINE t ch s d ng (Online) cho tablespace ngay t khi t o l p OFFLINE t ch chưa s d ng (Offline) cho tablespace ngay t khi t o l p PERMANENT tablespace có th s d ng lưu tr các i tư ng thư ng trú TEMPORARY tablespace ch s d ng lưu tr các i tư ng trung gian (temporary objects). Ví d : s d ng lưu tr d li u khi s p x p theo câu l nh ORDER BY Ví d : CREATE TABLESPACE app_data DATAFILE ‘/DISK4/app01.dbf’ SIZE 100M, ‘/DISK5/app02.dbf’ SIZE 100M MINIMUM EXTENT 500K DEFAULT STORAGE (INITIAL 500K NEXT 500K MAXEXTENTS 500 PCTINCREASE 0); Cũng tương t , ta có th th c hi n trong Oracle Enterprise Manager – OEM: 1. Ch y Oracle Storage Manager. 2. Ch n Tablespace—>Create. 3. Trong General page c a b ng thu c tính, nh p vào tên tablespace r i ch n ADD. 4. Trong b ng thu c tính Create Datafile, ch ra các data file. 5. Trong ph n Extents page, nh p vào các thông tin lưu gi ORACLE 9i – Ki n trúc và Qu n tr Trang 101
  7. www.updatesofts.com 6. Ch n m c Create. H n ch S lư ng t i a các tablespaces trên m i database là 64. S lư ng t i a các data files trong m i tablespace là 1023. 9.6.2. Ch qu n lý các tablespaces V i câu l nh t o tablespace thông thư ng như trên, Oracle server s t o tablespace v i ch qu n lý là Dictionary-Managed Tablespaces th c hi n qu n lý tablespace theo phương pháp Locally-Managed Tablespaces ta c n ưa thêm vào câu l nh m nh : MANAGEMENT LOCAL AUTOLOCATE. Ví d : CREATE TABLESPACE lmtbsb DATAFILE 'c:\data\lmtbsb01.dbf' SIZE 50M EXTENT MANAGEMENT LOCAL AUTOALLOCATE; 9.6.3. T o temporary tablespace Qu n tr viên database có th t o m t temporary tablespace s d ng cho vi c s p x p các d li u không dùng lưu tr thư ng trú các d li u. t o temporary tablespace, ta có th s d ng l nh SQL gi ng như l nh t o tablespace thông thư ng, nhưng có thêm t khoá TEMPORARY cu i. Ví d : CREATE TABLESPACE sort DATAFILE ‘/DISK2/sort01.dbf’ SIZE 50M MINIMUM EXTENT 1M DEFAULT STORAGE (INITIAL 2M NEXT 2M MAXEXTENTS 500 PCTINCREASE 0) TEMPORARY; V i Oracle Enterprise Manager, ta làm theo các bư c sau: 1. Ch y Oracle Storage Manager. 2. Ch n Tablespace—>Create. 3. Trong General page, nh p vào tên tương ng r i ch n ADD hi n th m c Create Datafile. 4. Trong Create Datafile ch ra t ng data file c th . 5. Ch n TEMPORARY trong nhóm ch n radio button. 6. B m nút Create. 9.6.4. Các tham s lưu tr Lư ng không gian dùng cho m t tablespace ư c xác nh trong m nh lưu tr (storage clause). Các tham s này ư c xác nh ngay t i th i i m t o tablespace. Trong trư ng h p không ch rõ các tham s này trong l nh t o l p (CREATE), các tham s s ư c s d ng các giá tr theo m c nh. Có m t s tham s lưu tr c n quan tâm sau: ORACLE 9i – Ki n trúc và Qu n tr Trang 102
  8. www.updatesofts.com INITIAL quy nh kích thư c c a extent u tiên. Kích thư c nh nh t c a extent u tiên là 02 block = (2*DB_BLOCK_SIZE). M c nh, kích thư c này là 5 blocks = (5* DB_BLOCK_SIZE). NEXT ng v i kích thư c c a extent th hai. Kích thư c t i thi u là 01 block. M c nh, kích thư c này là 5 blocks = (5* DB_BLOCK_SIZE). MINEXTENTS s lư ng extent ư c t o l p m i khi segment ư c t o l p. M c nh giá tr này là 1. PCTINCREASE ph n trăm tăng kích thư c extent. Kích thư c c a m t extent ư c xác nh theo kích thư c: V i: Sizen kích thư c c a extent th n Ví d : NEXT = 200K, PCTINCREASE = 50. Ta tính ư c extent th hai = 200K, extent thư ba = 300K, extent th tư = 450K MAXEXTENTS xác nh s lư ng t i a các extents có trong m t segment. Giá tr nh nh t là 1. Giá tr l n nh t theo m c nh ph thu c vào kích thư c c a block d li u. Giá tr này cũng có th ư c xác nh thông qua giá tr UNLIMITED, tương ương v i giá tr là 2147483645. 9.7.CÁC THAY I I V I TABLESPACE 9.7.1. Chuy n i m t tablespace thành m t temporary tablespace Ta có th thay i các tablespaces ang t n t i bi n nó thành m t temporary tablespace. Ví d : ALTER TABLESPACE tbsa TEMPORARY; 9.7.2. Thêm m i các tablespace m r ng không gian c a tablespace ta có th th c hi n theo hai cách sau: Thêm m i các data file vào tablespace Thay i dung lư ng các data files Ho c ta cũng có th s d ng câu l nh SQL can thi p như sau: ALTER TABLESPACE tablespace ADD DATAFILE filespec [autoextend_clause] [, filespec [autoextend_clause]]... V i Oracle Enterprise Manager, ta làm theo các bư c sau: 1. Ch y Oracle Storage Manager. 2. Ch n Tablespace—>Create. 3. Trong General page, nh p vào tên tương ng r i ch n ADD hi n th m c Create Datafile. 4. Trong Create Datafile ch ra t ng data file c th . ORACLE 9i – Ki n trúc và Qu n tr Trang 103
  9. www.updatesofts.com 9.7.3. M r ng data files Ta có th th c hi n m r ng (thay i) kích thư c data file theo hai cách: M r ng theo ch t ng. S d ng t khoá: AUTOEXTENTED M r ng theo ch can thi p tr c ti p (manually). S d ng l nh ALTER TABLESPACE, ALTER DATABASE Thi t l p ch AUTOEXTENT trong khi t o file Cú pháp: ALTER TABLESPACE tablespace ADD DATAFILE filespec [autoextend_clause] [, filespec [autoextend_clause]]... Ví d : ALTER TABLESPACE app_data ADD DATAFILE ‘/DISK6/app04.dbf’ SIZE 200M AUTOEXTEND ON NEXT 10M MAXSIZE 500M; Trong OEM ta th c hi n các bư c sau: 1. Ch y Oracle Storage Manager. 2. Chuy n t i nút Tablespace. 3. Ch nTablespace—>Add Datafile. 4. Trong General page nh p vào các thông tin c a file. 5. Trong Autoextend page nh p vào các thông tin tương ng. 6. B m nút Create. Thi t l p ch AUTOEXTENT khi data file ã t n t i Cú pháp: ALTER DATABASE [database] DATAFILE 'filename'[, 'filename']... autoextend_clause Trong OEM ta th c hi n các bư c sau: 1. Ch y Oracle Storage Manager. 2. Chuy n t i nút Tablespace node. 3. Ch n data file. 4. Trong ph n Autoextend page, b m vào nút Enable Auto Extend. 5. B m nút Apply. 9.7.4. Thay i kích thư c data file Thay vì m r ng kích thư c c a database b ng cách thêm vào các data file, qu n tr viên cũng có th m r ng b ng cách i u ch nh tăng kích thư c c a data file. S d ng câu l nh SQL sau thay i kích thư c c a data file ALTER DATABASE [database] ORACLE 9i – Ki n trúc và Qu n tr Trang 104
  10. www.updatesofts.com DATAFILE 'filename'[, 'filename']... RESIZE integer[K|M] V i: integer Kích thư c tuy t i c a file data file S d ng câu l nh SQL sau thay i nơi lưu tr m c nh: ALTER TABLESPACE tablespace {MINIMUM EXTENT integer[K|M] |DEFAULT storage_clause } Ví d : ALTER TABLESPACE app_data MINIMUM EXTENT 2M; ALTER TABLESPACE app_data DEFAULT STORAGE (INITIAL 2M NEXT 2M MAXEXTENTS 999); 9.7.5. Chuy n i ch ONLINE và OFFLINE User ch có th truy xu t vào tablespace n u nó ang tr ng thái online. Trong m t vài trư ng h p, qu n tr viên database có th thay i tr ng thái database thành offline v i m c ích: Di chuy n các data files t i v trí khác Ch cho phép user truy xu t ph n d li u còn l i trong database. chuy n i ch ONLINE và OFFLINE, ta có th th c hi n câu l nh SQL sau: ALTER TABLESPACE tablespace {ONLINE |OFFLINE [NORMAL|TEMPORARY|IMMEDIATE] } Ch OFFLINE Oracle server không cho phép th c hi n câu l nh SQL i v i các i tư ng có trong tablespace ã ư c OFFLINE. Oracle server th c hi n checkpoint i v i t t c các data files thu c tablespace trư c khi chuy n sang ch OFFLINE. M i khi database ư c m , qu n tr viên database có th chuy n ch offline cho t t c các tablespace ngo i tr SYSTEM và các tablespace tương ng v i các active rollback segments hay temporary segments. Trong OEM ta có th th c hi n theo các bư c sau: 1. Ch y Oracle Storage Manager. 2. Chuy n t i nút Tablespace. 3. Ch n tablespace tương ng. ORACLE 9i – Ki n trúc và Qu n tr Trang 105
  11. www.updatesofts.com 4. Trong General page, t ch trong Offline radio button. 5. B m nút Apply 9.7.6. Di chuy n các data file Tuỳ thu c ki u tablespace, ta có th di chuy n các data files theo các phương th c khác nhau. L nh ALTER TABLESPACE L nh này ch áp d ng cho các tablespace không ph i là SYSTEM tablespace, và không ch a rollback segments hay temporary segments. Câu l nh: ALTER TABESPACE tablespace RENAME DATAFILE 'filename'[, 'filename']... TO 'filename'[, 'filename']... Ví d : ALTER TABLESPACE app_data RENAME DATAFILE ‘/DISK4/app01.dbf’ TO ‘/DISK5/app01.dbf’; Ta th c hi n theo các bư c sau: 1. Chuy n ch offline cho tablespace. 2. Di chuy n các data files tương ng b ng l nh c a h i u hành. 3. Th c hi n l nh ALTER TABLESPACE RENAME DATAFILE. 4. Chuy n l i ch online cho tablespace ó. 5. S d ng l nh c a h i u hành xoá data file cũ n u c n thi t. L nh ALTER DATABASE L nh này ch áp d ng cho các tablespace không là SYSTEM và không ch a rollback segments hay temporary segments. Câu l nh: ALTER DATABASE [database] RENAME FILE 'filename'[, 'filename']... TO 'filename'[, 'filename']... Ví d : ALTER DATABASE RENAME FILE ‘/DISK1/system01.dbf’ TO ‘/DISK2/system01.dbf’; Ta th c hi n theo các bư c sau: 1. Shutdown database. 2. Di chuy n data files b ng l nh c a h i u hành. 3. Mount l i database. 4. Th c hi n l nh ALTER DATABASE RENAME FILE. 5. M l i database. ORACLE 9i – Ki n trúc và Qu n tr Trang 106
  12. www.updatesofts.com Trong OEM ta làm như sau 1. Ch y Oracle Storage Manager. 2. Chuy n t i nút Tablespace r i ch n data file tương ng. 3. Trong ph n General page, thay i l i các thông tin thích h p. 4. B m nút Apply. 9.7.7. Tablespace ch c S d ng l nh SQL thi t l p các ch này. Cú pháp: ALTER TABLESPACE tablespace READ{ONLY|WRITE} Ví d : ALTER TABLESPACE app_data READ ONLY; Trong OEM ta th c hi n theo các bư c sau: 1. Ch y Oracle Storage Manager. 2. Chuy n t i nút Tablespace. 3. Ch n tablespace. 4. Ch n Tablespace—>Make Read Only. 5. B m nút OK. Thi t l p ch ch c cho tablespace Ta có th thi t l p ch ch c cho tablespace khi nó mb om ts i u ki n sau: Tablespace ph i ang online Không có transaction nào x y ra i v i tablespace ó Tablespace không ch a các rollback segments Hi n th i không có online backup trên tablespace 9.7.8. Hu tablespace Trong m t vài trư ng h p ta có th hu tablespace kh i database. Vi c này có th th c hi n b i câu l nh SQL sau: DROP TABLESPACE tablespace [INCLUDING CONTENTS [CASCADE CONSTRAINTS]] Vi tablespace tên c a tablespace ư c hu INCLUDING CONTENTS hu luôn các segment có trong tablespace CASCADE CONSTRAINTS Hu luôn c các ràng bu c liên quan t i các b ng bên ngoài có tham chi u duy nh t t i các b ng thu c tablespace b hu Ví d : ORACLE 9i – Ki n trúc và Qu n tr Trang 107
  13. www.updatesofts.com DROP TABLESPACE app_data INCLUDING CONTENTS; Trong OEM ta th c hi n theo các bư c sau 1. Ch y Oracle Storage Manager. 2. Chuy n t i nút Tablespace ch n tablespace tương ng. 3. Ch n Tablespace—>Remove. 4. B m nút OK. 9.8.THÔNG TIN V CÁC TABLESPACES M t s views thông tin chung Tên tham s Di n gi i DBA_TABLESPACES, USER Di n gi i c a các tablespaces. TABLESPACES DBA_SEGMENTS, Thông tin v segment có trong các tablespaces. USER_SEGMENTS DBA_EXTENTS, Thông tin v data extents có trong các tablespaces. USER_EXTENTS DBA_FREE_SPACE, Thông tin v free extents có trong các tablespaces. USER_FREE_SPACE V$DATAFILE Thông tin v t t c các datafiles, bao g m c s hi u tablespace và user s h u tablespace. V$TEMPFILE Thông tin v các tempfiles, bao g m c s hi u tablespace và user s h u tablespace. DBA_DATA_FILES Hi n th các datafiles thu c các tablespaces. DBA_TEMP_FILES Hi n th các tempfiles thu c các temporary tablespaces. V$TEMP_EXTENT_MAP Thông tin c a các extents trong các locally managed temporary tablespaces. V$TEMP_EXTENT_POOL Thông tin c a các locally managed temporary tablespaces bao g m: tr ng thái c a temporary space cached (vùng không gian m trung gian) ư c s d ng b i m i instance. V$TEMP_SPACE_HEADER Hi n th vùng không gian used/free c a m i tempfile. DBA_USERS Các tablespaces m c nh và temporary tablespaces c a các users. DBA_TS_QUOTAS H n m c s d ng tablespace c a các users. V$SORT SEGMENT Thông tin v sort segment i v i m i instance. V$SORT_USER Vùng không gian s p x p trung gian ư c s d ng b i user và temporary/permanent tablespace. ORACLE 9i – Ki n trúc và Qu n tr Trang 108
  14. www.updatesofts.com 9.8.1. Xem thông tin tablespace xem thông tin v tablespace, ta có th l y trong data dictionary views. View DBA_TABLESPACES lưu tr các thông tin này. M t s thông tin quan tâm: Tên tham s Di n gi i TABLESPACE_NAME Tên tablespace NEXT_EXTENT Kích thư c c a các extent m r ng tính theo bytes MAX_EXTENTS S lư ng t i a các extents trong m t segment PCT_INCREASE Ph n trăm tăng trư ng kích thư c c a các extents MIN_EXTENTS S lư ng t i thi u các extents trong m t segment STATUS Tr ng thái c a tablespace là Online hay Offline CONTENTS Phân lo i tablespace là permanent hay temporary Ví d : SVRMGR> SELECT tablespace_name, initial_extent, next_extent, 2 > max_extents, pct_increase, min_extlen 3 > FROM dba_tablespaces; TABLESPACE_NAME INITIAL_EX NEXT_EXT MIN_EXTENT MAX_EXTENT PCT_I MIN_EXTLEN --------------- ---------- -------- ---------- ---------- ----- --------- SYSTEM 1240 10240 1 121 50 0 RBS 10240 10240 1 121 50 0 TEMP 262144 262144 1 999 50 131072 DATA01 204800 204800 1 999 50 51200 4 rows selected. SVRMGR> SELECT tablespace_name, contents,status 2> FROM dba_tablespaces; TABLESPACE_NAME CONTENTS STATUS --------------- --------- ------ SYSTEM PERMANENT ONLINE RBS PERMANENT ONLINE TEMP TEMPORARY ONLINE DATA01 PERMANENT ONLINE 4 rows selected. 9.8.2. Xem thông tin data files xem thông tin v data files, ta có th l y trong dictionary views. View DBA_DATA_FILES lưu tr các thông tin này. M t s thông tin quan tâm: Tên tham s Di n gi i Tên file (có kèm ư ng d n) tương ng v i datafile FILE_NAME Tên c a tablespace ng v i datafile ó TABLESPACE_NAME ORACLE 9i – Ki n trúc và Qu n tr Trang 109
  15. www.updatesofts.com Dung lư ng tính theo bytes c a tablespace hi n th i BYTES Ch t ng m r ng dung lư ng c a datafile AUTOEXTENSIBLE Dung lư ng t i a MAXBYTES Ch s tăng t ng trong h th ng INCREMENT_BY Ví d : SVRMGR> SELECT file_name, tablespace_name, bytes, 2> autoextensible, maxbytes, increment_by 3> FROM dba_data_files; FILE_NAME TABLESPACE_NAME BYTES AUT MAXBYTES INCREMENT_BY --------- --------------- -------- ---- -------- ---------- /DISK1/system01.dbf SYSTEM 31457280 NO 0 0 /DISK2/rbs01.dbf RBS 5242880 NO 0 0 /DISK3/temp01.dbf TEMP 5242880 NO 0 0 /DISK4/data01.dbf DATA01 5242880 NO 0 0 /DISK5/data02.dbf DATA01 512000 YES 15728640 512 5 rows selected. ORACLE 9i – Ki n trúc và Qu n tr Trang 110
  16. www.updatesofts.com Chương 10. C U TRÚC LƯU TR 10.1.CÁC LO I SEGMENTS Segments là các vùng không gian c a các objects ( i tư ng) trong database. Dư i ây, ta s xem xét m t s lo i segments c th . 10.1.1. Table Table (b ng), là nơi lưu gi d li u trong database. D li u trong m t table ư c lưu gi không theo m t th t b t bu c. Các d li u trong m t table thu c lo i nonpartitioned (không phân khu) s ph i lưu gi trong cùng m t tablespace. Hình v 37. Các lo i segments 10.1.2. Table partition Có th có m t s table trong database có s lư ng truy c p l n và ng th i. Khi ó, d li u trong table ó s ư c lưu thành nhi u partition (phân khu), m i partition có th n m trên các tablespace khác nhau. Oracle server h tr vi c phân chia này b ng các giá tr khoá. Khi m t table ư c phân khu, m i partition ó ư c xem như m t segment. 10.1.3. Cluster Các dòng d li u trong m t cluster ư c lưu tr theo các giá tr c a trư ng khoá (key column). M t cluster có th ch a m t hay nhi u tables và nó ư c xem là m t ki u o n d li u (type of data segment). Các tables trong m t cluster thu c v cùng m t o n và có chung các tính ch t lưu tr . 10.1.4. Index T t c các u m c (entries) ng v i m t index c th ư c lưu tr trong m t index segment. M t table có t i bao nhiêu indexes, thì s có b y nhiêu index segments ư c s d ng. M c ích c a segment này là tìm ki m và nh v các dòng d li u trong m t table d a trên m t khoá ư c ch ra. ORACLE 9i – Ki n trúc và Qu n tr Trang 111
  17. www.updatesofts.com 10.1.5. Index-Organized Table Trong m t index-organized table, các d li u trong m t index ư c lưu tr d a vào giá tr khoá. M t index-organized table không c n thi t n m t table dùng tìm ki m (lookup), các d li u có th ư c tr v ngay tr c ti p t cây index (index tree). Hình v 38. Các lo i segments (ti p theo) 10.1.6. Index Partition M t index có th ư c partitioned (phân khu) và tr i r ng trên nhi u tablespaces khác nhau. Khi ó, m i partition c a m t index s tương ng v i segment ( o n) và không ư c phép n m dài trên nhi u tablespaces. M c ích chính c a vi c s d ng index partition là gi m thi u nh ng tranh ch p vào ra I/O. 10.1.7. Rollback Segment Rollback segment ư c s d ng trong transaction (giao d ch) t o các thay i trong database. Trư c khi thay i các d li u hay các index blocks, các giá tr cũ s ư c lưu gi vào rollback segment. Vi c làm này cho phép user có th ph c h i l i các thay i. 10.1.8. Temporary Segment Khi m t user th c hi n các lênh như CREATE INDEX, SELECT DISTINCT, và SELECT GROUP BY, Oracle s c g ng th c hi n công vi c s p x p ngay trong b nh . Khi công vi c spxpcn n nhi u không gian hơn, các k t qu này s ư c ghi tr c ti p lên ĩa. Temporary segments s ư c dùng n trong trư ng h p này. 10.1.9. LOB Segment Khi m t hay nhi u c t trong table lưu gi các i tư ng l n (large objects - LOBs) như các văn b n tài li u, hình nh, hay videos. Các c t ch a d li u l n này s ư c Oracle server lưu gi trong các segments riêng ư c bi t n như là LOB segments. Table s ch lưu gi các giá tr dùng nh v , xác nh nơi lưu gi các d li u LOB tương ng. ORACLE 9i – Ki n trúc và Qu n tr Trang 112
  18. www.updatesofts.com 10.1.10. LOB Index M t LOB index segment ư c t o ng m nh m i khi LOB segment ư c t o l p. Các tính ch t lưu gi c a LOB index có th ư c quy nh b i qu n tr viên database. M c ích c a vi c s d ng LOB index segment là cho phép tìm ki m các giá tr c th trong c t d li u lo i LOB. Hình v 39. Các lo i segments (ti p theo) 10.1.11. Nested Table C t d li u trong table có th ư c t o l p t m t user-defined table (b ng do ngư i dùng nh nghĩa). Trong trư ng h p này, b ng d li u tương ng v i ph n t thu c c t d li u (inner table), ư c bi t n như m t nested table và ư c lưu gi trong m t segment riêng bi t. 10.1.12. Bootstrap Segment bi t n như m t cache segment, ư c t o b i file script sql.bsq Bootstrap segment, ư c sau m i khi database ư c t o. Segment giúp cho vi c kh i t o data dictionary cache m i khi database ư c m b i m t instance. D li u trong bootstrap segment không th xem hay s a ch a, c p nh t ư c. Qu n tr database cũng không c n thi t ph i quan tâm t i segment này. 10.2.QU N LÝ EXTENTS 10.2.1. C p phát và thu h i các extents Vi c c p phát các extent x y ra m i khi segment ư c t o m i, ư c m r ng hay b thay i (altered). Và nó s b thu h i khi segment b hu , b thay i, b c t b t (truncated). Riêng i v i các rollback segments, các extent có th b t ng thu h i. ORACLE 9i – Ki n trúc và Qu n tr Trang 113
  19. www.updatesofts.com 10.2.2. S d ng và gi i phóng các extent Khi m t tablespace ư c t o, các data files thu c tablespace s ch a các ph n thông tin sau: Header block, tương ng v i block u tiên c a file Ph n còn l i c a data file là các ph n còn tr ng Hình v 40. S d ng và gi i phóng các extents M i khi segments ư c t o l p, nó s ư c c p phát m t vùng không thích h p t nh ng extents còn tr ng trong tablespace. Segment s c g ng s d ng nhi u nh t các vùng không gian liên ti p nhau. Sau khi c p phát, extent ó s ư c xem là used extent (extent ã ư c s d ng). Khi các segments gi i phóng vùng không gian, các extents tương ng v i nó s ư c gi i phóng và ưa vào vùng free extents (extents r i) c a tablespace. V i vi c c p phát và gi i phóng các extents có th gây nên hi n tư ng phân o n vùng d li u trong các data files c a tablespace. 10.2.3. K t h p các vùng không gian tr ng Ta có th th c hi n vi c k t h p các vùng không gian tr ng liên ti p nhau m i khi các extents trong cùng m t tablespace ư c gi i phóng. i u này r t d x y ra, ví d : khi có hai table b hu (dropped). Các extents tr ng này có th ư c k t h p l i thành m t extent trong các i u ki n: Khi ti n trình SMON kh i t o m t space transaction k t h p các extents tr ng. Khi Oracle server c n ph i c p phát vùng tr ng mà nó c n t i lư ng không gian tr ng l n hơn không gian c a m t extent. K t h p theo yêu c u c a qu n tr viên database. ORACLE 9i – Ki n trúc và Qu n tr Trang 114
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2