Giáo Trình Hệ Quản Trị Cơ Sở Dữ Liệu Oracle

Khám phá giáo trình hệ quản trị cơ sở dữ liệu Oracle, cung cấp kiến thức và kỹ năng cần thiết cho việc quản lý và phát triển cơ sở dữ liệu hiệu quả.

Trường đại học

Trường Đại Học Cần Thơ

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Giáo Trình

2014

184
9
0

Phí lưu trữ

45 Point

Mục lục chi tiết

LỜI NÓI ĐẦU

1. CHƯƠNG 1: GIỚI THIỆU

1.1. Định nghĩa hệ quản trị CSDL

1.2. Chức năng của hệ quản trị CSDL

1.3. Các thành phần của một HQTCSDL

1.4. Kiến trúc hệ CSDL đa người dùng

1.5. Nhà quản trị CSDL

2. CHƯƠNG 2: CÁC BIỆN PHÁP BẢO VỆ CSDL

2.1. An toàn trong CSDL

2.2. Sao lưu và phục hồi

2.3. Toàn vẹn dữ liệu

2.4. Mật hoá dữ liệu

3. CHƯƠNG 3: QUẢN LÝ GIAO DỊCH & PHỤC HỒI

3.1. Điều khiển cạnh tranh (Concurrency control)

3.2. Phục hồi CSDL

4. CHƯƠNG 4: HỆ QUẢN TRỊ CSDL ORACLE

4.1. Giới thiệu hệ quản trị CSDL Oracle

4.2. Các khái niệm và cấu trúc lưu trữ CSDL Oracle

4.3. Mở/tắt CSDL và thể hiện (startup/shutdown)

4.4. Kết nối CSDL từ client

4.5. Bảng dữ liệu và các đối tượng liên quan

4.6. Quản lý người dùng. Quản lý quyền trong Oracle

4.7. Quản lý vai trò (Role)

4.8. Import và export

4.9. Oracle Data Pump

5. CHƯƠNG 5: BÀI TẬP THỰC HÀNH. LẬP TRÌNH CSDL TRONG ORACLE

5.1. Các cấu trúc điều khiển

5.2. Kiểu con trỏ (Cursor)

5.3. Thủ tục, hàm và trigger

5.4. BÀI TẬP THỰC HÀNH – KHỐI VÔ DANH

5.5. BÀI TẬP THỰC HÀNH – HÀM, THỦ TỤC và TRIGGER

6. CHƯƠNG 6: QUẢN LÝ GIAO DỊCH TRONG ORACLE

6.1. Các mức độ độc lập

6.2. Cơ chế khóa của Oracle

6.3. Sao lưu, phục hồi trong Oracle

CÁC LỖI THƯỜNG GẶP

CÁC HÀM XỬ LÝ DỮ LIỆU

KẾT NỐI CSDL TỪ ỨNG DỤNG

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về Giáo Trình Quản Trị Cơ Sở Dữ Liệu Oracle

Giáo trình Quản Trị Cơ Sở Dữ Liệu Oracle cung cấp cái nhìn tổng quan về các khái niệm và kỹ thuật quản lý cơ sở dữ liệu. Tài liệu này được biên soạn nhằm phục vụ cho sinh viên ngành Công nghệ Thông tin, giúp họ nắm vững các kiến thức cần thiết để quản lý và bảo trì hệ thống cơ sở dữ liệu. Nội dung giáo trình bao gồm lý thuyết và thực hành, giúp sinh viên áp dụng kiến thức vào thực tế.

1.1. Mục tiêu của giáo trình

Giáo trình nhằm trang bị cho sinh viên kiến thức về quản trị cơ sở dữ liệu, từ việc thiết lập đến bảo trì. Sinh viên sẽ học cách sử dụng SQL trong Oracle để thực hiện các thao tác cơ bản.

1.2. Cấu trúc của giáo trình

Giáo trình được chia thành hai phần chính: lý thuyết và thực hành. Mỗi phần lý thuyết sẽ đi kèm với các bài thực hành cụ thể, giúp sinh viên áp dụng kiến thức đã học.

II. Vấn đề và thách thức trong quản trị cơ sở dữ liệu Oracle

Quản trị cơ sở dữ liệu Oracle đối mặt với nhiều thách thức như bảo mật, hiệu suất và khả năng mở rộng. Những vấn đề này cần được giải quyết để đảm bảo hệ thống hoạt động hiệu quả và an toàn. Việc hiểu rõ các thách thức này sẽ giúp sinh viên chuẩn bị tốt hơn cho công việc thực tế.

2.1. Bảo mật cơ sở dữ liệu

Bảo mật là một trong những vấn đề quan trọng nhất trong quản trị cơ sở dữ liệu. Cần có các biện pháp bảo vệ dữ liệu khỏi các mối đe dọa từ bên ngoài và bên trong.

2.2. Hiệu suất và tối ưu hóa

Tối ưu hóa hiệu suất cơ sở dữ liệu là cần thiết để đảm bảo hệ thống hoạt động mượt mà. Các kỹ thuật như chỉ mục và phân vùng dữ liệu sẽ được thảo luận.

III. Phương pháp quản trị cơ sở dữ liệu hiệu quả trong Oracle

Để quản trị cơ sở dữ liệu Oracle hiệu quả, cần áp dụng các phương pháp và công cụ phù hợp. Việc sử dụng các công cụ quản lý và lập trình sẽ giúp tối ưu hóa quy trình làm việc.

3.1. Sử dụng SQL trong Oracle

SQL là ngôn ngữ chính để tương tác với cơ sở dữ liệu Oracle. Việc nắm vững SQL sẽ giúp sinh viên thực hiện các truy vấn và thao tác dữ liệu hiệu quả.

3.2. Quản lý giao dịch

Quản lý giao dịch là một phần quan trọng trong quản trị cơ sở dữ liệu. Cần hiểu rõ các khái niệm như ACID để đảm bảo tính toàn vẹn của dữ liệu.

IV. Ứng dụng thực tiễn của quản trị cơ sở dữ liệu Oracle

Quản trị cơ sở dữ liệu Oracle có nhiều ứng dụng thực tiễn trong các tổ chức và doanh nghiệp. Việc áp dụng các kiến thức từ giáo trình sẽ giúp sinh viên có thể giải quyết các vấn đề thực tế trong công việc.

4.1. Các tình huống thực tế

Sinh viên sẽ được giới thiệu về các tình huống thực tế mà họ có thể gặp phải khi làm việc với cơ sở dữ liệu Oracle, từ việc thiết lập đến bảo trì.

4.2. Kết quả nghiên cứu

Các nghiên cứu về hiệu suất và bảo mật trong quản trị cơ sở dữ liệu Oracle sẽ được trình bày, giúp sinh viên hiểu rõ hơn về tầm quan trọng của các vấn đề này.

V. Kết luận và tương lai của quản trị cơ sở dữ liệu Oracle

Quản trị cơ sở dữ liệu Oracle đang ngày càng trở nên quan trọng trong thời đại số. Tương lai của lĩnh vực này hứa hẹn sẽ có nhiều cơ hội phát triển cho những ai nắm vững kiến thức và kỹ năng cần thiết.

5.1. Xu hướng phát triển

Các xu hướng mới trong công nghệ cơ sở dữ liệu như điện toán đám mây và trí tuệ nhân tạo sẽ ảnh hưởng đến cách quản trị cơ sở dữ liệu trong tương lai.

5.2. Cơ hội nghề nghiệp

Nhu cầu về chuyên gia quản trị cơ sở dữ liệu Oracle đang tăng cao. Sinh viên có thể tìm thấy nhiều cơ hội việc làm trong lĩnh vực này.

17/07/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1. GIỚI THIỆU Nội dung chính: Trong chương này, chúng ta sẽ tìm hiểu về Hệ quản trị CSDL và nhà quản trị CSDL. Mục tiêu cần đạt: Sau khi học xong chương này, sinh viên có thể: • Định nghĩa hệ quản trị cơ sở dữ liệu (HQTCSDL) • Hiểu các chức năng, thành phần của một HQTCSDL. • Hiểu kiến trúc của HQTCSDL đa người dùng • Hiểu được vai trò, nhiệm vụ của nhà quản trị CSDL.

Định nghĩa hệ quản trị CSDL Hệ quản trị CSDL (HQTCSDL) là một hệ thống phần mềm cho phép người dùng định nghĩa, tạo và duy trì CSDL đồng thời cung cấp dịch vụ truy cập đến CSDL này một cách có quản lý. Chúng ta cần lưu ý là HQTCSDL chỉ là một phần của một hệ thống CSDL (database system). Như minh họa trong hình bên dưới, ngoài HQTCSDL, một hệ CSDL còn bao gồm các CSDL và các chương trình ứng dụng phục vụ cho người dùng cuối trong hệ thống. Các HQTCSDL phổ biến hiện nay bao gồm Oracle của tập đoàn Oracle, DB2 của IBM, MS SQL Server của Microsofts.

Ngoài ra còn có MS Access của Microsoft và các phần mềm nguồn mở như MySQL, PostGreSQL, … 1. Chức năng của hệ quản trị CSDL Lưu trữ, truy xuất và cập nhật dữ liệu Đây là các chức năng cơ bản của một HQTCSDL. Người dùng có thể lưu Hình 1. Hệ cơ sở dữ liệu trữ, truy xuất và cập nhật dữ liệu thông qua việc sử dụng các ngôn ngữ định nghĩa (Data Definition Langugage – DDL), ngôn ngữ thao tác dữ liệu (Data Manipulation Langugage – DML) trong đó bao hàm ngôn ngữ truy vấn dữ liệu (Structured Query Language – SQL).

HQTCSDL phải hỗ trợ khả năng thực hiện các chức năng này từ một máy tính truy cập từ xa vào CSDL qua mạng. Danh mục hệ thống Người dùng có thể truy cập vào danh mục chứa thông tin mô tả về các dữ liệu được lưu trong CSDL gọi là danh mục hệ thống (system catalog) hay còn gọi là tự điển dữ liệu (data dictionary). Dữ liệu này còn gọi là siêu dữ liệu hay dữ liệu về dữ liệu (metadata), tùy theo HQTCSDL mà chúng có thể bao gồm: - Tên, kiểu, và kích cỡ của các mục dữ liệu - Tên các mối quan hệ giữa các dữ liệu - Ràng buộc toàn vẹn trên dữ liệu - Tên người dùng được quyền truy cập vào dữ liệu - Mục dữ liệu và kiểu truy cập mà mỗi (loại) người dùng có quyền Trang 2 - Lược đồ ngoài, lược đồ quan niệm và lược đồ trong và ánh xạ giữa các lược đồ này. - Các con số thống kê sử dụng như tần suất của giao dịch, số lượt truy cập đến một đối tượng trong CSDL.

An toàn dữ liệu An toàn dữ liệu là sự bảo vệ CSDL khỏi những đe dọa có chủ ý hay vô tình thông qua các biện pháp có sử dụng máy tính hoặc không có sử dụng máy tinh. Việc xem xét an toàn không chỉ áp dụng cho dữ liệu trong CSDL, mà còn bao gồm cả phần cứng, phần mềm và con người. Vì vậy, các HQTCSDL phải cung cấp nhiều tiện ích để đảm bảo sự an toàn cho dữ liệu như ngăn chận truy cập đối với người dùng không được phép thông qua việc quản lý và cấp quyền người dùng (user authorization), hoặc chỉ truy cập dữ liệu thông qua view được cấp quyền. Các tiện ích này sẽ được đề cập chi tiết hơn trong chương 2.

Toàn vẹn dữ liệu Dữ liệu với một ý nghĩa trong thực tế luôn phải thỏa mãn các điều kiện ràng buộc toàn vẹn nào đó về mặt giá trị; chẳng hạn như, điểm thi mang giá trị thực từ 0 đến 10, hoặc giá trị của một hóa đơn phải bằng tổng các tích số lượng hàng bán nhân đơn giá bán. Các ràng buộc toàn vẹn này cũng góp phần duy trì một hệ CSDL an toàn bằng cách ngăn không cho dữ liệu thành không hợp lệ, từ đó tránh dẫn đến kết quả sai. Các HQTCSDL giúp duy trì tính nhất quán của dữ liệu thông qua việc hỗ trợ các phương tiện bảo đảm ràng buộc trên dữ liệu (data constraints), cơ chế quản lý giao dịch (transaction management). Các công cụ cài đặt ràng buộc đã được đề cập trong môn học CSDL, nên giáo trình này sẽ không nhắc lại.

Cơ chế quản lý giao dịch sẽ được đề cập chi tiết trong chương 3. Điều khiển cạnh tranh Trong tình huống CSDL có nhiều người dùng cùng lúc thì có khả năng xảy ra tình huống cập nhật làm cho dữ liệu mất tính nhất quán. Các HQTCSDL phải cung cấp cơ chế đảm bảo CSDL được cập nhật đúng đắn khi có nhiều người dùng cùng lúc cập nhật một mục dữ liệu. Các cơ chế điều khiển cạnh tranh sẽ được phân tích chi tiết trong chương 3.

Phục hồi CSDL Để đảm bảo tính an toàn cho hệ thống CSDL ngay cả khi có sự cố xảy ra, các HQTCSDL cần cung cấp cơ chế cho phép phục hồi CSDL về một trạng thái nhất quán sau sự cố làm CSDL bị hỏng theo bất cứ kiểu nào. Cơ chế về sao lưu và phục hồi sẽ được trình bày chi tiết trong chương 3. Các tiện ích khác Ngoài các chức năng trên, HQTCSDL thường hỗ trợ thêm các tiện ích khác: - Tiện ích nhập/xuất dữ liệu: cho phép tải dữ liệu từ các tập tin văn bản hay từ CSDL của các HQTCSDL khác và ngược lại. - Tiện ích giám sát: giám sát việc sử dụng và thao tác trên CSDL.

- Chương trình phân tích thống kê: dùng để khảo sát hiệu suất và thống kê việc sử dụng. - Tiện ích tổ chức chỉ mục Trang 3 1. Các thành phần của một HQTCSDL Để đáp ứng được các chức năng vừa nêu, các HQTCSDL là các phần mềm rất phức tạp và mỗi HQTCSDL đều có kiến trúc riêng, nên rất khó có thể đưa ra một kiến trúc chung. Mỗi tài liệu có thể đề xuất một kiến trúc khác nhau.

Hình bên dưới mô tả một kiến trúc HQTCSDL đề xuất bởi [Thomas 2005]. Lập trình viên Người dùng Nhà quản trị Ứng dụng Truy vấn Lược đồ CSDL HQTCSDL Bộ tiền xử lý Bộ xử lý truy Trình biên DML vấn dịch DDL Mã đối tượng Bộ quản lý Bộ quản lý chương trình CSDL tự điển Cơ chế Bộ quản lý Truy cập Tập tin Vùng đệm hệ thống CSDL và danh mục hệ thống Hình 2. Các thành phần của một HQTCSDL [Thomas 2005] Một HQTCSDL có thể phân thành sáu thành phần chính như Hình 2, mỗi phần đảm trách một công việc cụ thể: - Bộ xử lý truy vấn: Đây là thành phần chủ yếu của một HQTSCDL để biến đổi các truy vấn thành một tập lệnh cấp thấp chuyển đến bộ quản lý CSDL. - Bộ quản lý CSDL: nhận vào các mã đối tượng chương trình và các truy vấn, đối chiếu với lược đồ ngoài và lược đồ quan niệm để xác định các mẫu tin quan niệm cần thiết để trả lời truy vấn.

Bộ phận này được chia nhỏ thành các thành phần nhỏ hơn như Hình 3. - Bộ tiền xử lý ngôn ngữ DML: bộ phần này biến đổi các lệnh thao tác dữ liệu (DML) như insert, delete, update,. thành các lời gọi hàm chuẩn. Bộ phận này phải tương tác với bộ xử lý truy vấn để sinh mã phù hợp.

- Trình biên dịch DDL: chuyển các lệnh định nghĩa dữ liệu (DDL) thành một tập các bảng chứa siêu dữ liệu. Các bảng này sau đó được lưu trong tự điển hệ thống. - Bộ quản lý tự điển: quản lý sự truy cập và duy trì tự điển hệ thống. Trang 4 Mã đối tượng Bộ xử lý SQL Bộ quản lý chương trình tự điển Bộ quản lý CSDL Quản lý Quyền Bộ kiểm tra Bộ xử lý Lệnh Bộ tối ưu Toàn vẹn Truy vấn Bộ quản lý Bộ lập lịch Giao dịch trình Bộ quản lý Bộ quản lý Bộ quản lý Dữ liệu Vùng đệm Phục hồi Cơ chế Bộ quản lý Truy cập Tập tin Vùng đệm hệ thống CSDL và danh mục hệ thống Hình 3.

Các thành phần của Bộ quản lý CSDL Hình 3 mô tả các thành phần chính của bộ quản lý CSDL, chúng bao gồm: - Điều khiển quyền: kiểm tra xem người dùng có đủ các quyền cần thiết để thực hiện thao tác yêu cầu không. - Bộ xử lý lệnh: xử lý câu lệnh sau khi xác nhận là đủ quyền - Bộ kiểm tra toàn vẹn: đối với các thao tác làm thay đổi CSDL, bộ phần này sẽ kiểm tra xem thao tác này có thỏa mãn tất cả các ràng buộc toàn vẹn hay không. - Bộ tối ưu truy vấn: xác định một chiến lược tối ưu để thực hiện truy vấn. - Bộ quản lý giao dịch: thực hiện các xử lý cần thiết cho các thao tác nhận được từ các giao dịch.

- Bộ lập lịch trình: bộ phận này có trách nhiệm đảm bảo rằng các thao tác cạnh tranh trên CSDL được thực hiện mà không gây ra mâu thuẩn. Nó điều khiển trật tự thực thi tương đối của các thao tác trong từng giao dịch. Kiến trúc hệ CSDL đa người dùng Xử lý từ xa Đây là một kiến trúc truyền thống. Một máy tính rất mạnh (mainframe) kết nối với nhiều máy đầu cuối (terminal).

Toàn bộ tải (từ lưu trữ CSDL, HQTCSDL và ứng Trang 5 dụng) đều thực hiện trên mainframe. Một xu hướng được nhìn nhận hiện nay là thay thế mainframe đắt tiền bằng một tập hợp PC nối mạng nhằm đạt được khả năng tính toán mạnh như mainframe. Máy chủ tập tin (File-server) CSDL sẽ được lưu trên một máy chủ, HQTCSDL sẽ được cài tại các máy trạm (workstation) nối với máy chủ qua một mạng cục bộ. Kiến trúc này giúp phân chia tải trên nhiều máy.

Tuy nhiên nó có khuyết điểm là ảnh hưởng đến giao thông mạng, mỗi máy trạm đều phải cài HQTCSDL, và do đó khả năng quản lý cạnh tranh, phục hồi và toàn vẹn phức tạp hơn. Client-server hai tầng Kiến trúc này gồm 2 tầng: tầng client sẽ cài và chạy chương trình ứng dụng; tầng server cài HQTCSDL và CSDL. Hình 4 minh họa kiến trúc này. Nhờ CSDL được quản lý tập trung bởi 1 HQTCSDL tại server nên kiến trúc này có ưu điểm là khả năng truy cập đến CSDL được mở rộng hơn, tăng hiệu quả hoạt động, có thể giảm chi phí phần cứng, giảm chi phí truyền thông (chỉ những dữ liệu được yêu cầu mới được truyền về cho client), và tính nhất quán được đảm bảo.

Tuy nhiên, phía client nảy sinh 2 khó khăn khi chương trình ứng dụng trở nên lớn. Một là đòi hỏi nhiều tài nguyên hơn trên máy client để có thể chạy ứng dụng một cách hiệu quả (fat client). Hai là đòi hỏi thêm nhiều công việc quản trị ở phía client.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ