Bài giảng Hệ quản trị cơ sơ dữ liệu Oracle - Chương 4: Các đối tượng trong cơ sở dữ liệu - Ngô Thùy Linh

pdf 40 trang ngocly 2570
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Hệ quản trị cơ sơ dữ liệu Oracle - Chương 4: Các đối tượng trong cơ sở dữ liệu - Ngô Thùy Linh", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_he_quan_tri_co_so_du_lieu_oracle_chuong_4_cac_doi.pdf

Nội dung text: Bài giảng Hệ quản trị cơ sơ dữ liệu Oracle - Chương 4: Các đối tượng trong cơ sở dữ liệu - Ngô Thùy Linh

  1. CÁC ĐỐI TƯỢNG TRONG CƠ SỞ DỮ LIỆU Giảng viên: NGÔ THÙY LINH Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  2. Nội dung chính  Tablespace  Schema  Table  Constraint  Index  View  Synonym  Data dictionary 4-2 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  3. Tablespace - 1  Là đơn vị logic bên trong một cơ sở dữ liệu  Nhóm các đối tượng để dễ quản lý  Một tablespace có thể không chứa hoặc chứa nhiều segment  Segment: các đối tượng lưu trữ bên ngoài data dictionary, ví dụ: table, index 4-3 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  4. Tablespace - 2  Có 2 loại tablespace • Bigfile tablespace: – Mới có từ Oracle 10g – Chỉ chứa 1 datafile (dung lượng lên tới 32TB) – Phù hợp cho CSDL lớn – Ví dụ: • Smallfile tablespace: – Một tablespace chứa nhiều datafile – Dung lượng tối đa 32GB – Ví dụ: 4-4 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  5. Sử dụng OMF (Oracle Managed File)  Giúp DBA quản lý các tablespace mà không cần phải quan tâm tới datafile  Ví dụ:  Oracle tự động tạo datafile có tên không trùng nhau  Sau khi sử dụng OMF, DBA chỉ cần khai báo tablespace một cách ngắn gọn: 4-5 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  6. Tablespace mặc định  Khi tạo mới một CSDL, mặc định Oracle server tạo 2 tablespace SYSTEM, SYSAUX • SYSTEM: lưu trữ data dictionary • SYSAUX: lưu trữ các đối tượng xử lý các chức năng Oracle cung cấp sẵn, ví dụ: XMLDB,  Một DB bắt buộc phải có: • SYSTEM, SYSAUX, TEMP 4-6 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  7. Tablespace tạm  Dùng cho các segment tạm  Segment tạm thường phát sinh khi gặp các phép toán: ORDER BY, GROUP BY, CREATE INDEX,  Ví dụ: 4-7 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  8. Undo tablespace  Chứa các undo segment, dùng cho các trường hợp: • Rollback transaction tường minh với câu lệnh ROLLBACK • Rollback transaction không tường minh (phục hồi dữ liệu sau khi database bị lỗi) • Tái cấu trúc dữ liệu • Phục hồi dữ liệu sau khi bị lỗi logic  Ví dụ: 4-8 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  9. Xóa tablespace  Câu lệnh xóa:  INCLUDING CONTENTS: xóa các table, index trong tablespace  Mặc định, Oracle chỉ xóa tablespace mà không xóa datafile, muốn xóa datafile thì sử dụng câu lệnh: 4-9 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  10. Sửa tablespace - 1  Đổi tên tablespace  Thêm datafile vào tablespace (trong trường hợp là smallfile tablespace)  Chuyển tablespace sang trạng thái read-only  Chuyển tablespace sang trạng thái read-write 4-10 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  11. Sửa tablespace - 2  Chuyển tablespace sang trạng thái offline  Chuyển tablespace sang trạng thái online  Thay đổi đường dẫn của datafile  Chuyển tablespace sang chế độ backup • Sau khi backup xong thì bỏ chế độ backup 4-11 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  12. Sử dụng EM để quản lý tablespace - 1 4-12 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  13. Sử dụng EM để quản lý tablespace - 2 4-13 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  14. Schema  Schema là tập hợp các đối tượng trong database được sở hữu bởi user nào đó  Mỗi user chỉ có 1 schema và ngược lại owns HR schema HR user 4-14 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  15. Các đối tượng của schema 4-15 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  16. Bảng  Bảng tạm: • Lưu trữ dữ liệu dùng riêng cho 1 session • Dữ liệu bị xóa khi kết thúc session hoặc transaction • Có thể thao tác dữ liệu, nối với với các bảng khác như bình thường  Tạo bảng tạm 4-16 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  17. Sử dụng EM để tạo bảng Xác định tên schema Xác định tên cột, kiểu dữ liệu, độ dài. 4-17 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  18. Constraint 4-18 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  19. Index  Là cấu trúc dữ liệu tùy chọn, xây dựng cho một bảng xác định Tăng tốc độ truy vấn dữ liệu  Có thể tạo index cho một hay nhiều cột trong bảng (giá trị khóa) WHERE key = 22 Row Key pointer 22 22 Index Table 4-19 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  20. Cấu trúc khối trong tập tin dữ liệu Khối #1 của tập tin dữ liệu HEADER 11 Nguyễn Lan Hà Nội 100000 12 Lê Minh Lào Cai 200000 13 Hải Châu Hà Giang 700000 FREE SPACE 3 2 1 FOOTER 250/100 150/100 50/100 3 Chiều dài header 50 bytes Chiều dài mỗi bản ghi không đổi là 100 bytes 11 ROWID=(1,1) 12 ROWID=(1,2) 13 ROWID=(1,3) Khóa tìm kiếm = 12 4-20 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  21. Các loại index  Có 2 loại index: • B-tree index (mặc định) – Sắp xếp giá trị khóa & ROWID dưới dạng B-tree – Phù hợp với những cột có ít giá trị giống nhau – Hỗ trợ “row locking” – Có 2 loại: unique và non-unique • Bitmap – Khóa và ROWID lưu dưới dạng bitmap – Phù hợp với những cột có nhiều giá trị giống nhau – Không hỗ trợ “row-locking” 4-21 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  22. B-Tree Index Index entry Root Branch Index entry header Leaf Key column length Key column value ROWID 4-22 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  23. B-Tree Index 4-23 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  24. 4-24 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  25. Bitmap Index Table File 3 Block 10 Block 11 Index Block 12 Start End Key ROWID ROWID Bitmap 4-25 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  26. Index  Tạo index  Xóa index  Quản lý index 4-26 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  27. Sử dụng EM để tạo index 4-27 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  28. View LOCATION table COUNTRY table View CREATE VIEW v AS SELECT location_id, country_name FROM locations l, countries c WHERE l.country_id = c.country_id AND c.country_id in ('AU','BR'); 4-28 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  29. VIEW  Lệnh tạo VIEW 4-29 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  30. VIEW  Ví dụ 4-30 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  31. VIEW  Tạo view ở chế độ Read - Only 4-31 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  32. VIEW  Tạo view với WITH CHECK OPTION 4-32 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  33. Quản lý view  Xóa view  Có thể insert, update, delete dữ liệu trên view, ngoại trừ một số trường hợp: 4-33 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  34. Sequence  Là một đối tượng trong schema dùng để tự động sinh ra các số nguyên theo thứ tự nào đó (thường dùng cho khóa chính)  Đặc điểm • Mỗi sequence có 1 tên xác định • Không gắn với 1 cột hay 1 bảng nào • Có thể tạo ra số nguyên theo thứ tự tăng hoặc giảm dần đều • Khoảng cách giữa 2 số nguyên do người dùng tùy đặt • Có thể quay vòng nếu giá trị sinh ra đã đạt ngưỡng 4-34 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  35. Sequence  Các thuộc tính: • START WITH • INCREMENT BY • MAXVALUE • MINVALUE • CACHE 1 3 5 7 9 11 13 15 4-35 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  36. Tạo sequence 4-36 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  37. Quản lý sequence  Sửa sequence • Có thể sửa các thuộc tính: INCREMENT BY, MAXVALUE, MINVALUE, CYCLE, CACHE • Không thể sửa: START WITH • Ví dụ:  Xóa sequence  Sử dụng sequence 4-37 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  38. Synonym  Bí danh cho mọi đối tượng trong Oracle  Ưu điểm: • Đơn giản cho câu lệnh SQL • Không tốn không gian lưu trữ • Tăng tính bảo mật  Ví dụ: 4-38 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  39. Data dictionary Tables Indexes Views Users Schemas Procedures and so on SELECT * FROM dictionary; 4-39 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng
  40. 4-40 Khoa Hệ thống thông tin quản lý – Học viện Ngân Hàng