Tải bản đầy đủ

Xây dựng ứng dụng quản lý học viên trung tâm tin học ngoại ngữ trên nền website ứng dụng cơ sở dữ liệu oracle

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC TÂY BẮC

LÊ VĂN QUẢNG

XÂY DỰNG ỨNG DỤNG QUẢN LÝ HỌC VIÊN
TRUNG TÂM TIN HỌC - NGOẠI NGỮ TRÊN NỀN WEB
SỬ DỤNG CƠ SỞ DỮ LIỆU ORACLE

KHÓA LUẬN TỐT NGHIỆP

SƠN LA, NĂM 2017


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC TÂY BẮC

LÊ VĂN QUẢNG

XÂY DỰNG ỨNG DỤNG QUẢN LÝ HỌC VIÊN
TRUNG TÂM TIN HỌC - NGOẠI NGỮ TRÊN NỀN WEB

SỬ DỤNG CƠ SỞ DỮ LIỆU ORACLE

Chuyên ngành: Công nghệ thông tin

KHÓA LUẬN TỐT NGHIỆP
Ngƣời hƣớng dẫn: ThS. Phạm Quốc Thắng

SƠN LA, NĂM 2017


LỜI CẢM ƠN

Sau một thời gian học tập, nghiên cứu và triển khai khóa luận tốt nghiệp:
“Xây dựng ứng dụng quản lý học viên trung tâm Tin học - Ngoại ngữ trên
nền web sử dụng cơ sở dữ liệu Oracle”, đến nay tôi đã hoàn thành khóa luận
tốt nghiệp của mình.
Tôi xin bày tỏ tấm lòng biết ơn sâu sắc nhất tới ThS. Phạm Quốc Thắng
đã trực tiếp hướng dẫn, chỉ bảo tận tình trong suốt quá trình tôi thực hiện khóa
luận tốt nghiệp này.
Đồng thời tôi cũng chân thành cảm ơn tới lãnh đạo Nhà trường, Ban chủ
nhiệm Khoa cùng các thầy cô giáo đã giúp đỡ, tạo điều kiện để tôi có cơ hội
nghiên cứu, học tập và hoàn thành khóa luận tốt nghiệp này.
Do hạn chế về trình độ chuyên môn và thời gian thực hiện nên đề tài không
tránh khỏi những thiếu sót, rất mong nhận được sự góp ý của thầy cô để tôi có
thể hoàn thành tốt nhất đề tài nghiên cứu này.
Xin chân thành cảm ơn!
Sơn La, tháng 5 năm 2017
Sinh viên

Lê Văn Quảng


MỤC LỤC
MỞ ĐẦU ........................................................................................................... 1
1. Lý do chọn đề tài ............................................................................................ 1
2. Mục đích nghiên cứu ...................................................................................... 2
3. Đối tượng nghiên cứu ..................................................................................... 2
4. Phạm vi nghiên cứu ........................................................................................ 2
5. Phương pháp nghiên cứu ................................................................................ 2
6. Bố cục đề tài................................................................................................... 2

NỘI DUNG ....................................................................................................... 4
CHƢƠNG I: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE VÀ CÔNG CỤ
APEX ................................................................................................................ 4
1. Hệ quản trị cơ sở dữ liệu Oracle ..................................................................... 4
1.1. Giới thiệu về hệ quản trị cơ sở dữ liệu Oracle .............................................. 4
1.2. Kiến trúc hệ quản trị cơ sở dữ liệu Oracle ................................................... 6
1.3. Kết nối và quản trị Oracle. ......................................................................... 13
2. Công cụ APEX (Oracle Application Express) .............................................. 18
2.1. Giới thiệu .................................................................................................. 18
2.2. Các tính năng nổi bật của APEX ............................................................... 19
CHƢƠNG II: PHÂN TÍCH VÀ THIẾT KẾ HỆ THÔNG QUẢN LÝ HỌC
VIÊN TRUNG TÂM TIN HỌC - NGOẠI NGỮ .......................................... 23
1. Mô tả hệ thống ............................................................................................. 23
1.1. Các quy trình nghiệp vụ............................................................................. 23
1.2. Nhiệm vụ của hệ thống .............................................................................. 24
2. Liệt kê và đặc tả các ca sử dụng ................................................................... 24
2.1. Use case .................................................................................................... 24
2.2. Đặc tả ca sử dụng ...................................................................................... 24
3. Biểu đồ CA .................................................................................................. 28
4. Biểu đồ hoạt động ........................................................................................ 30
4.1. Đăng nhập ................................................................................................. 30
4.2. Quản lý thông tin ....................................................................................... 30
4.3. Đăng ký học .............................................................................................. 31
4.4. Đóng học phí, lệ phí .................................................................................. 31


4.5. Xếp lớp...................................................................................................... 32
5.6. Nhập điểm ................................................................................................. 32
4.7. Cấp chứng chỉ ........................................................................................... 33
4.8. Lập báo cáo ............................................................................................... 33
5. Biểu đồ trình tự ............................................................................................ 34
5.1. Đăng nhập ................................................................................................. 34
5.1. Quản lý thông tin ....................................................................................... 34
5.3. Đăng ký học .............................................................................................. 35
5.4. Đóng học phí, lệ phí .................................................................................. 35
5.5. Xếp lớp...................................................................................................... 36
5.6. Nhập điểm ................................................................................................. 36
5.7. Cấp chứng chỉ ........................................................................................... 37
5.8. Lập báo cáo ............................................................................................... 37
6. Biểu đồ lớp chi tiết ....................................................................................... 38
7. Thiết kế cơ sở liệu ........................................................................................ 38
7.1. Nhân viên .................................................................................................. 38
7.2. Học viên .................................................................................................... 39
7.3. Giáo viên ................................................................................................... 39
7.4. Chức vụ ..................................................................................................... 40
7.4. Môn học .................................................................................................... 40
7.5. Phòng học.................................................................................................. 40
7.6. Ca học ....................................................................................................... 41
7.7. Khóa học ................................................................................................... 41
7.9. Lớp ............................................................................................................ 41
7.10. Đăng ký học ............................................................................................ 42
7.11. Đóng học phí ........................................................................................... 43
7.12. Xếp lớp.................................................................................................... 43
CHƢƠNG 3: CÀI ĐẶT VÀ THỬ NGHIỆM ỨNG DỤNG ......................... 45
1. Thiết kế giao diện ......................................................................................... 45
1.1. Trang đăng nhập ........................................................................................ 45
1.2. Khung hiển thị của website ........................................................................ 45
1.3. Quản lý học viên ....................................................................................... 46


1.4. Quản lý giáo viên ...................................................................................... 47
1.5. Quản lý nhân viên ..................................................................................... 47
1.6. Quản lý chức vụ ........................................................................................ 48
1.7. Quản lý môn học ....................................................................................... 49
1.8. Quản lý phòng học .................................................................................... 49
1.9. Quản lý kỳ học .......................................................................................... 50
1.10. Quản lý khóa học..................................................................................... 51
1.11. Quản lý ca học ......................................................................................... 51
1.12. Đăng ký học ............................................................................................ 52
1.13. Thu học phí, lệ phí................................................................................... 53
1.14. Lớp học ................................................................................................... 54
1.15. Xác nhận đã thi........................................................................................ 55
1.16. Nhập điểm ............................................................................................... 55
1.17. Cấp chứng chỉ.......................................................................................... 56
1.18. Lập báo cáo ............................................................................................. 57
2. Cài đặt và thử nghiệm một số chức năng ...................................................... 58
2.1. Đăng nhập ................................................................................................. 58
2.2. Quản lý học viên ....................................................................................... 59
2.3. Quản lý giáo viên ...................................................................................... 60
2.4. Quản lý nhân viên ..................................................................................... 61
2.5. Đăng ký học .............................................................................................. 62
2.6. Thu học phí ............................................................................................... 63
2.7. Quản lý lớp học ......................................................................................... 64
2.8. Nhập điểm ................................................................................................. 65
2.9. Quản lý chứng chỉ ..................................................................................... 66
KẾT LUẬN ..................................................................................................... 67
TÀI LIỆU THAM KHẢO.............................................................................. 68


DANH MỤC HÌNH ẢNH
Hình 1: Kiến trúc hệ quản trị cơ sở dữ liệu Oracle.............................................. 6
Hình 2: Thành phần process trong Oracle server ................................................ 7
Hình 3: Thành phần Oracle Instance trong Oracle server ................................... 8
Hình 4: Thành phần Oracle database trong Oracle server ................................... 9
Hình 5: Giao diện không gian làm việc của APEX ........................................... 19
Hình 6: Giao diện Interactive Grids .................................................................. 20
Hình 7: Một số loại biểu đồ trong APEX .......................................................... 21
Hình 8: Tùy biến giao diện trang web của APEX ............................................. 21
Hình 9: Một số ứng dụng mẫu của APEX ........................................................ 22
Hình 10: Biểu đồ Use Case của nhân viên ........................................................ 29
Hình 11: Phân giã Use Case quản lý thông tin .................................................. 29
Hình 12: Biểu đồ hoạt động đăng nhập............................................................. 30
Hình 13: Biểu đồ hoạt động quản lý nhân viên ................................................. 30
Hình 14: Biểu đồ hoạt động đăng ký học.......................................................... 31
Hình 15: Biểu đồ hoạt động đóng học phí, lệ phí.............................................. 31
Hình 16: Biểu đồ hoạt động xếp lớp ................................................................. 32
Hình 17: Biểu đồ hoạt động nhập điểm ............................................................ 32
Hình 18: Biểu đồ hoạt động cấp chứng chỉ ....................................................... 33
Hình 19: Biểu đồ hoạt động lập báo cáo ........................................................... 33
Hình 20: Biểu đồ trình tự đăng nhập ................................................................ 34
Hình 21: Biểu đồ trình tự quản lý nhân viên ..................................................... 34
Hình 22: Biểu đồ trình tự đăng ký học.............................................................. 35
Hình 23: Biểu đồ trình tự đóng học phí, lệ phí.................................................. 35
Hình 24: Biểu đồ trình tự xếp lớp ..................................................................... 36
Hình 25: Biểu đồ trình tự nhập điểm ................................................................ 36
Hình 26: Biểu đồ trình tự cấp chứng chỉ ........................................................... 37
Hình 27: Biểu đồ trình tự lập báo cáo ............................................................... 37
Hình 28: Biểu đồ lớp chi tiết ............................................................................ 38
Hình 29: Trang đăng nhập ................................................................................ 45
Hình 30: Khung hiển thị của website ................................................................ 45
Hình 31: Trang danh sách học viên .................................................................. 46
Hình 32: Trang cập nhật học viên ..................................................................... 46


Hình 33: Trang danh sách giáo viên ................................................................. 47
Hình 34: Trang Cập nhật giáo viên ................................................................... 47
Hình 35: Trang danh sách nhân viên ................................................................ 47
Hình 36: Trang cập nhật nhân viên ................................................................... 48
Hình 37: Trang danh sách chức vụ ................................................................... 48
Hình 38: Tràn cập nhật chức vụ........................................................................ 48
Hình 39: Trang danh sách môn học .................................................................. 49
Hình 40: Trang cập nhật môn học .................................................................... 49
Hình 41: Trang danh sách phòng học ............................................................... 49
Hình 42: Trang cập nhật phòng học .................................................................. 50
Hình 43: Trang Danh sách kỳ hoc .................................................................... 50
Hình 44: Trang cập nhật kỳ học ....................................................................... 50
Hình 45: Trang danh sách khóa học ................................................................. 51
Hình 46: Trang cập nhật khóa học .................................................................... 51
Hình 47: Trang danh sách ca học...................................................................... 51
Hình 48: Trang cập nhật ca học ........................................................................ 52
Hình 49: Trang danh sách đăng ký học............................................................. 52
Hình 50: Trang cập nhật đăng ký học ............................................................... 52
Hình 51: Trang thu học phí, lệ phí .................................................................... 53
Hình 52: Trang cập nhật đóng học phí, lệ phí ................................................... 53
Hình 53: Trang danh sách lớp học .................................................................... 54
Hình 54: Trang cập nhật lớp học ...................................................................... 54
Hình 55: Trang xếp lớp .................................................................................... 55
Hình 56: Trang xác nhận đã thi ........................................................................ 55
Hình 57: Nhập điểm ......................................................................................... 55
Hình 58: Trang danh sách cấp chứng chỉ .......................................................... 56
Hình 59: Trang cập nhật cấp chứng chỉ ............................................................ 56
Hình 60: Báo cáo đăng ký học.......................................................................... 57
Hình 61: Báo cáo lớp học ................................................................................. 57
Hình 62: Báo cáo bảng điểm ............................................................................ 58
Hình 63: Giao diện đăng nhập .......................................................................... 58
Hình 64: Giao diện danh sách học viên ............................................................ 59
Hình 65: Giao diện cập nhật học viên ............................................................... 59
Hình 66: Giao diện danh sách giáo viên ........................................................... 60


Hình 67: Giao diện cập nhật giáo viên .............................................................. 60
Hình 68: Giao diện danh sách nhân viên .......................................................... 61
Hình 69: Giao diện cập nhật nhân viên ............................................................. 61
Hình 70: Giao diện danh sách đăng ký học....................................................... 62
Hình 763: Giao diện cập nhật đăng ký học ....................................................... 62
Hình 72: Giao diện danh sách học phí, lệ phí ................................................... 63
Hình 73: Giao diện thu học phí......................................................................... 63
Hình 74: Giao diện danh sách lớp học .............................................................. 64
Hình 75: Giao diện cập nhật lớp học ................................................................ 64
Hình 76: Giao diện xếp lớp .............................................................................. 65
Hình 77: Giao diện nhập điểm .......................................................................... 65
Hình 78: Giao diện danh sách cấp chứng chỉ .................................................... 66
Hình 79: Giao diện cập nhật cấp chứng chỉ ...................................................... 66


DANH MỤC BẢNG BIỂU
Bảng 1: Bảng nhân viên ................................................................................... 38
Bảng 2: Bảng học viên ..................................................................................... 39
Bảng 3: Bảng giáo viên .................................................................................... 39
Bảng 4: Bảng chức vụ ...................................................................................... 40
Bảng 5: Bảng môn học ..................................................................................... 40
Bảng 6: Bảng phòng học .................................................................................. 40
Bảng 7: Bảng ca học......................................................................................... 41
Bảng 8: Bảng khóa học .................................................................................... 41
Bảng 9: Bảng kỳ học ........................................................................................ 41
Bảng 10: Bảng lớp............................................................................................ 42
Bảng 11: Bảng đăng ký học.............................................................................. 43
Bảng 12: Bảng đóng học phí ............................................................................ 43
Bảng 13: Bảng xếp lớp ..................................................................................... 44


1
MỞ ĐẦU
1. Lý do chọn đề tài
Cơ sở dữ liệu là một trong những lĩnh vực được quan tâm nhiều trong khoa
học máy tính nói riêng cũng như công nghệ thông tin nói chung. Từ khi có mô hình
cơ sở dữ liệu đầu tiên vào những năm 60 đến nay tuy không là chặng đường dài đối
với các ngành khoa học khác, nhưng với khoa học máy tính và đặc biệt với cơ sở
dữ liệu thì đó là thời gian đáng kể. Cơ sở dữ liệu đã trải qua nhiều thế hệ của hệ
quản trị cơ sở dữ liệu, và đã có nhiều ứng dụng trong khoa học và trong các ngành
kinh tế quốc dân.
Thời đại thông tin ngày nay, bài toán cơ bản và cốt yếu là: Làm thế nào lưu trữ
thông tin an toàn và chắc chắn đồng thời lại truy cập chính xác và dễ dàng. Theo
thời gian, yêu cầu của bài toán ngày càng cao với lượng thông tin cần lưu trữ, xử lý
ngày càng nhiều và đa dạng.
Trong khi đó, hệ quản trị cơ sở dữ liệu Oracle là một trong những giải pháp tốt
nhất, được công nhận trên thị trường tin học thế giới hiện nay. Oracle đã nghiên
cứu và phát triển, cho phép người sử dụng quản lí, sử dụng, chia sẻ và bảo vệ thông
tin một cách có hiệu quả. Cơ sở dữ liệu Oracle được thiết kế để triển khai cho mọi
môi trường. Việc cài đặt, quản lý rất dễ dàng, các công cụ để phát triển các ứng
dụng một cách hoàn thiện và nhanh chóng. Cơ sở dữ liệu Oracle phù hợp cho mọi
loại dữ liệu, các ứng dụng và các môi trường khác nhau bao gồm cả windows và
linux với chi phí tối thiểu. Ngoài ra Oracle có một số tính năng như: Có khả năng
xử lý dữ liệu rất lớn, có thể lên đến hàng trăm terabyte mà vẫn đảm bảo tốc độ xử
lý dữ liệu rất cao. Khả năng bảo mật rất tốt, Oracle đạt độ bảo mật cấp C2 theo tiêu
chuẩn bảo mật của bộ quốc phòng Mỹ.
Ngày nay, để đáp ứng nhu cầu xã hội, các nhà đầu tư giáo dục đã mở ra ngày
càng nhiều các trung tâm Tin học – Ngoại ngữ. Như chúng ta biết trung tâm Tin
học – Ngoại ngữ có lượng dữ liệu về học viên ngày càng tăng theo thời gian, tuy


2
nhiên hầu hết các trung tâm còn quản lý theo phương thức thô sơ: lưu trữ và quản
lý trên các giấy tờ và hồ sơ. Phương thức quản lý này khó khăn, mất nhiều thời
gian, chi phí và tốn nhân công dẫn đến chưa đạt hiệu quả cao.
Chính vì thế tôi đã chọn và thực hiện đề tài “Xây dựng ứng dụng quản lý học
viên trung tâm Tin học - Ngoại ngữ trên nền web sử dụng cơ sở dữ liệu Oracle”
2. Mục đích nghiên cứu
- Nghiên cứu về hệ quản trị cơ sở dữ liệu Oracle.
- Nghiên cứu và phát triển ứng dụng “Quản lý học viên trung tâm Tin học Ngoại ngữ trên nền web sử dụng cơ sở dữ liệu Oracle”
3. Đối tƣợng nghiên cứu
- Hệ quản trị cơ sở dữ liệu Oracle và công cụ APEX
- Hệ thống quản lý học viên trung Tin học – Ngoại ngữ.
4. Phạm vi nghiên cứu
- Hệ thống quản lý học viên trung tâm Tin học – Ngoại ngữ Trường Đại học
Tây Bắc.
5. Phƣơng pháp nghiên cứu
- Tổng hợp tài liệu
- Nghiên cứu tài liệu
- Khảo sát, phân tích thực tế
- Thiết kế, cài đặt kỹ thuật
6. Bố cục đề tài
Đề tài gồm:
 Mở đầu.
 Nội dung
- Chương 1. Hệ quản trị cơ sở dữ liệu Oracle và công cụ APEX.
- Chương 2. Phân tích và thiết kế hệ thống quản lý học viên Trung tâm Tin
học - Ngoại ngữ.
- Chương 3. Cài đặt và thử nghiệm ứng dụng.


3
 Kết luận.
 Tài liệu tham khảo.


4
NỘI DUNG
CHƢƠNG I: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE VÀ CÔNG CỤ APEX
1. Hệ quản trị cơ sở dữ liệu Oracle
1.1. Giới thiệu về hệ quản trị cơ sở dữ liệu Oracle
Oracle Database hay còn gọi là Oracle RDBMS là 1 hệ quản trị cơ sở dữ liệu
quan hệ, được phát triển và phân phối bởi tập đoàn Oracle. Là một trong những
phần mềm quản trị cơ sở dữ liệu hàng đầu thế giới cho phép quản lý thông tin một
cách toàn diện, cung cấp khả năng mở, tính bao hàm toàn diện, và gần gũi.
Hệ quản trị cơ sở dữ liệu Oracle gồm một số đặc trưng sau:
1.1.1. Truy xuất dữ liệu
a) SQL
SQL (SEQUEL – Structured English Query Language) Là ngôn ngữ truy xuất
dữ liệu cho hệ quản trị cơ sở dữ liệu quan hệ, SQL trong Oracle tương thích với
SQL theo chuẩn ANSI (American National Standards Institute - Viện tiêu chuẩn
quốc gia Mỹ)
SQL chia thành 4 lớp:
 Ngôn ngữ định nghĩa dữ liệu (DAL – Data Definition Language)
- Mức quan niệm: CREATE DATABASE, TABLE,…
- Mức ngoài: CREATE VIEW, GRANT,...
- Mức trong: CREATE INDEX,...
 Ngôn ngữ thao tác dữ liệu (DML – Data Manipulation Language)
- Truy suất: SELECT
- Cập nhật: INSERT, UPDATE, DELETE
 Ngôn ngữ điều khiển dữ liệu (DCL – Data Control Language)
 Ngôn ngữ điều khiển hệ thống (SYCL – System Control Language)
b) PL/SQL


5
PL/SQL (Procedure Language/SEQUEL – Structured English Query
Language) Là ngôn ngữ mở rộng của SQL, kết hợp SQL với ngôn ngữ lập trình có
cấu trúc.
1.1.2. Tính đồng hành
- Dữ liệu đọc và bổ sung nhất quán, thực hiện tốt các yêu cầu của người dùng.
- Điều khiển tính ra vào, với những người dùng khi truy xuất cùng một đơn vị
dữ liệu, sao cho tại cùng một thời điểm cho giản ước thời gian chờ là tối thiểu đến
mức gần bằng 0.
- Đảm bảo dữ liệu nhất quán trong thời gian đọc.
- Đảm bảo người đọc không chờ người viết và ngược lại.
- Đảm bảo người viết phải chờ người viết khác nếu cùng cập nhật đến một đơn
vị dữ liệu.
1.1.3. Tính an toàn
 Đảm bảo tính an toàn nhờ các kiểm soát:
- Quyền truy cập vào cơ sở dữ liệu.
- Quyền trên cơ sở dữ liệu nào.
- Quyền trên đối tượng nào trong cơ sở dữ liệu, bao gồm:
o Quyền hệ thống: Cho phép tác động đến hệ thống là quyền rất mạnh.
o Quyền đối tượng: Cho phép tác động lên một đối tượng cụ thể.
1.1.4. Sao lƣu và khôi phục dữ liệu
 Sao lưu:
- Trong khi Sao lưu, cơ sở dữ liệu vẫn có thể hoạt động bình thường,
- Tạo file backup gồm 2 dạng:
o Full backup: Toàn bộ file tạo cơ sở dữ liệu
o Partial backup: Chỉ sao lưu một phần của dữ liệu
 Khôi phục
- Là quá trình hồi phục lại cơ sở dữ liệu từ file sao lưu
- Thứ tự khôi phục dữ liệu phụ thuộc vào:


6
o Kiểu backup.
o Thời gian biểu
1.1.5. Cơ sở dữ liệu phân tán
 Xử lí phân tán
- Dùng nhiều bộ xử lí tiến trình thành các tập công việc có liên quan. Phân
công công việc cho các bộ xử lí khác cùng hợp tác làm việc. Oracle hỗ trợ công
việc xử lí phân tán bằng kiến trúc Client/ Server.
- Client tập trung cho công việc ra yêu cầu trình bày dữ liệu
- Server tiếp nhận các yêu cầu từ Client, xử lí và trả về kết quả cho Client
 Cơ sở dữ liệu phân tán
- Là một mạng cơ sở dữ liệu quản lí bởi nhiều server cơ sở dữ liệu, xuất hiện
đối với người dùng như một cơ sở dữ liệu duy nhất
- Dữ liệu có thể truy xuất bổ sung đồng thời tại cùng một thời điểm
1.2. Kiến trúc hệ quản trị cơ sở dữ liệu Oracle
Hệ quản trị cơ sở dữ Oracle liệu gồm 3 phần chính: Process, Oracle Instance
và Oracle database.

Hình 1: Kiến trúc hệ quản trị cơ sở dữ liệu Oracle


7
1.2.1. Process

Hình 2: Thành phần process trong Oracle server
 User process: Khi người dùng chạy một chương trình ứng dụng (chẳng hạn
như một chương trình Pro*C) hoặc một công cụ Oracle (như Oracle Enterprise
Manager hoặc SQL*Plus), Oracle Database sẽ tạo ra một quá trình sử dụng để chạy
các ứng dụng của người dùng
 Server process: Oracle database tạo ra server process để xử lý những
request của user process khi kết nối đến instance. Nếu user process và server
process là cùng 1 máy, thì có thể gộp chung thành 1 process để giảm tải cho server.
Nếu user process đến từ 1 máy khác server, thì Oracle database sẽ luôn tạo ra 1
server process để phục vụ cho 1 user process khi kết nối đến.
1.2.2. Oracle Instance
Oracle Instance bao gồm một cấu trúc bộ nhớ SGA (System Global Area) và
các tiến trình nền (background processes) dùng để quản trị cơ sở dữ liệu. Oracle
Instance được xác định qua tham số môi trường ORACLE_SID của hệ điều hành.


8

Hình 3: Thành phần Oracle Instance trong Oracle server
1.2.2.1. System Global Area
SGA là vùng bộ nhớ chia sẻ được sử dụng để lưu trữ dữ liệu và các thông tin
điều khiển của Oracle server. SGA được cấp phát (allocated) trong bộ nhớ của máy
tính mà Oracle server đang hoạt động trên đó. Các User kết nối tới Oracle sẽ chia
sẻ các dữ liệu có trong SGA, việc mở rộng không gian bộ nhớ cho SGA sẽ làm
nâng cao hiệu suất của hệ thống, lưu trữ được nhiều dữ liệu trong hệ thống hơn
đồng thời giảm thiểu các thao tác truy xuất đĩa (disk I/O).
SGA bao gồm một vài cấu trúc bộ nhớ chính:
- Shared pool: Là một phần của SGA lưu các cấu trúc bộ nhớ chia sẻ.
- Database buffer cache: Lưu trữ các dữ liệu được sử dụng gần nhất.
- Redo log buffer: Được sử dụng cho việc dò tìm lại các thay đồi trong cơ sở
dữ liệu và được thực hiện bởi các background process.
1.2.2.2. Background process
Background process (các tiến trình nền) thực hiện các chức năng thay cho lời
gọi tiến trình xử lý tương ứng. Nó điều khiển vào ra, cung cấp các cơ chế xử lý
song song nâng cao hiệu quả và độ tin cậy. Tùy theo từng cấu hình mà Oracle
instance có các Background process như:


9
- Database Writer (DBW0): Ghi lại các thay đổi trong data buffer cache ra
các file dữ liệu.
- Log Writer (LGWR): Ghi lại các thay đổi được đăng ký trong redo log
buffer vào các redo log files.
- System Monitor (SMON): Kiểm tra sự nhất quán trong database.
- Process Monitor (PMON): Dọn dẹp lại tài nguyên khi các tiến trình của
Oracle gặp lỗi.
- Checkpoint Process (CKPT): Cập nhật lại trạng thái của thông tin trong file
điều khiển và file dữ liệu mỗi khi có thay đổi trong buffer cache
1.2.3. Oracle database
Oracle database là tập hợp các dữ liệu được xem như một đơn vị thành phần
(Unit). Database có nhiệm vụ lưu trữ và trả về các thông tin liên quan. Database
được xem xét dưới hai góc độ cấu trúc logic và cấu trúc vật lý. Tuy vậy, hai cấu
trúc dữ liệu này vẫn tồn tại tách biệt nhau, việc quản lý dữ liệu theo cấu trúc lưu trữ
vật lý không gây ảnh hưởng tới cấu trúc logic.
Oracle database được xác định bởi một tên duy nhất và được quy định trong
tham số DB_NAME của parameter file

Hình 4: Thành phần Oracle database trong Oracle server


10
1.2.3.1. Cấu trúc vật lý database
Cấu trúc vật lý bao gồm tập hợp các control file, online redo log file và các
datafile.
a) Datafiles
Mỗi một Oracle database đều có thể có một hay nhiều datafiles. Các database
datafiles chứa toàn bộ dữ liệu trong database. Các dữ liệu thuộc cấu trúc logic của
database như tables hay indexes đều được lưu trữ dưới dạng vật lý trong các
datafiles của database.
Một số tính chất của datafiles:
- Mỗi datafile chỉ có thể được sử dụng trong một database.
- Bên cạnh đó, datafiles cũng còn có một số tính chất cho phép tự động mở
rộng kích thước mỗi khi database hết chỗ lưu trữ dữ liệu.
- Một hay nhiều datafiles tạo nên một đơn vị lưu trữ logic của database gọi là
tablespace.
- Một datafile chỉ thuộc về một tablespace.
Dữ liệu trong một datafile có thể đọc ra và lưu vào vùng nhớ bộ đệm của
Oracle. Ví dụ: Khi một user muốn truy cập dữ liệu trong một table thuộc database.
Trong trường hợp thông tin yêu cầu không có trong cache memory hiện thời, nó sẽ
được đọc trực tiếp từ các datafiles ra và lưu trữ vào trong bộ nhớ.
Tuy nhiên, việc bổ sung hay thêm mới dữ liệu vào database không nhất thiết
phải ghi ngay vào các datafile. Các dữ liệu có thể tạm thời ghi vào bộ nhớ để giảm
thiểu việc truy xuất tới bộ nhớ ngoài (ổ đĩa) làm tăng hiệu năng sử dụng hệ thống.
Công việc ghi dữ liệu này được thực hiện bởi DBW/ 1 background process.
b) Redo Log Files
Mỗi Oracle database đều có một tập hợp từ 02 redo log files trở lên. Các redo
log files trong database thường được gọi là database's redo log. Một redo log được
tạo thành từ nhiều redo entries (gọi là các redo records).


11
Chức năng chính của redo log là ghi lại tất cả các thay đổi đối với dữ liệu
trong database. Redo log files được sử dụng để bảo vệ database khỏi những hỏng
hóc do sự cố. Oracle cho phép sử dụng cùng một lúc nhiều redo log gọi là
multiplexed redo log để cùng lưu trữ các bản sao của redo log trên các ổ đĩa khác
nhau.
Các thông tin trong redo log file chỉ được sử dụng để khôi phục lại database
trong trường hợp hệ thống gặp sự cố và không cho phép viết trực tiếp dữ liệu trong
database lên các datafiles trong database. Ví dụ: Khi có sự cố xảy ra như mất điện
bất chợt chẳng hạn, các dữ liệu trong bộ nhớ không thể ghi trực tiếp lên các
datafiles và gây ra hiện tượng mất dữ liệu. Tuy nhiên, tất cả các dữ liệu bị mất này
đều có thể khôi phục lại ngay khi database được mở trở lại. Việc này có thể thực
hiện được thông qua việc sử dụng ngay chính các thông tin mới nhất có trong các
redo log files thuộc datafiles. Oracle sẽ khôi phục lại các database cho đến thời
điểm trước khi xảy ra sự cố.
Công việc khôi phục dữ liệu từ các redo log được gọi là rolling forward.
c) Control Files
Mỗi Oracle database đều có ít nhất một control file. Control file chứa các mục
thông tin quy định cấu trúc vật lý của database như:
- Tên của database.
- Tên và nơi lưu trữ các datafiles hay redo log files.
- Time stamp (mốc thời gian) tạo lập database,...
Mỗi khi nào một instance của Oracle database được mở, control file của nó sẽ
được sử dụng để xác định data files và các redo log files đi kèm. Khi các thành
phần vật lý cả database bị thay đổi (ví dụ như tạo mới datafile hay redo log file),
Control file sẽ được tự động thay đổi tương ứng bởi Oracle.
Control file cũng được sử dụng đến khi thực hiện khôi phục lại dữ liệu.


12
1.2.3.2. Cấu trúc logic databse
Cấu trúc logic của Oracle database bao gồm các đối tượng tablespaces,
schema objects, data blocks, extents, và segments.
a) Tablespaces
Một database có thể được phân chia về mặt logic thành các đơn vị gọi là các
tablespaces. Tablespaces thường bao gồm một nhóm các thành phần có quan hệ
logic với nhau. Một số đặc điểm của tablespaces:
- Mỗi database có thể phân chia về mặt logic thành một hay nhiều tablespace.
- Mỗi tablespace có thể được tạo nên, về mặt vật lý, bởi một hoặc nhiều
datafiles.
- Kích thước của một tablespace bằng tổng kích thước của các datafiles của
nó.
- Kích thước của database cũng có thể xác định được bằng tổng kích thước của
các tablespaces của nó.
b) Schema và Schema Objects
Schema là tập hợp các đối tượng (objects) có trong database. Schema objects
là các cấu trúc logic cho phép tham chiếu trực tiếp tới dữ liệu trong database.
Schema objects bao gồm các cấu trúc như tables, views, sequences, stored
procedures, synonyms, indexes, clusters và database links.
c) Oracle Data Blocks
Là mức phân cấp logic thấp nhất, các dữ liệu của Oracle database được lưu trữ
trong các data blocks. Một data block tương ứng với một số lượng nhất định các
bytes vật lý của database trong không gian đĩa cứng. Kích thước của một data block
được chỉ ra cho mỗi Oracle database ngay khi database được tạo lập. Database sử
dụng, cấp phát và giải phóng vùng không gian lưu trữ thông qua các Oracle data
blocks.


13
d) Extents
Là mức phân chia cao hơn về mặt logic các vùng không gian trong database.
Một extent bao gồm một số data blocks liên tiếp nhau, cùng được lưu trữ tại một
thiết bị lưu giữ. Extent được sử dụng để lưu trữ các thông tin có cùng kiểu.
e) Segments
Là mức phân chia cao hơn nữa về mặt logic các vùng không gian trong
database. Một segment là một tập hợp các extents được cấp phát cho một cấu trúc
logic.
f) Các cấu trúc vật lý khác
Ngoài ra, Oracle Server còn sử dụng các file khác để lưu trữ thông tin. Các file
đó bao gồm:
- Parameter file: Parameter file chỉ ra các tham số được sử dụng trong
database. Người quản trị database có thể sửa đổi một vài thông tin có trong file này.
Các tham số trong parameter file được viết ở dạng văn bản.
- Password file: Xác định quyền của từng user trong database. Cho phép người
sử dụng khởi động và tắt một Oracle instance.
- Archived redo log files: Là bản offline của các redo log files chứa các thông
tin cần thiết để phục hồi dữ liệu.
1.3. Kết nối và quản trị Oracle.
1.3.1. Kết nối
1.3.1.1 Mô hình kết nối
Một Oracle server có thể chạy trên nhiều máy tính khác nhau theo một trong
những cách sau:
- Kết nối trực tiếp (Host – Based): Kết nối mà Client nằm trên cùng một máy
chủ Oracle server.
- Kết nối hai lớp (Client – Server) client-server: Client nằm trên một máy tính
khác và kết nối trực tiếp tới máy chủ Oracle Server.


14
- Kết nối ba lớp (Client – Application server – Server): Client nằm trên máy
tính khác với máy chủ Oracle Server, nó giao tiếp với một ứng dụng hay một máy
chủ mạng (network server) và điều khiển ứng dụng hay máy chủ này kết nối tới
Oracle server.
1.3.1.2 Kết nối tới database
Để kết nối tới database trước tiên, cần phải tạo liên kết tới Oracle Server. Liên
kết tới Oracle Server được tạo theo các bước sau:
- User sử dụng công cụ SQLPlus hay sử dụng các công cụ khác của Oracle để
khởi tạo tiến trình. Trong mô hình Client-Server, các công cụ hay ứng dụng này
được chạy trên máy Client.
- User thực hiện login vào Oracle server với việc khai báo username, password
và tên liên kết tới database. Các ứng dụng tools sẽ tạo một tiến trình để kết nối tới
Oracle server qua các tham số này. Tiến trình này được gọi là tiến trình phục vụ.
Tiến trình phục vụ sẽ giao tiếp với Oracle server thay cho tiến trình của user chạy
trên máy Client.
1.3.2. Quản trị Oracle
Oracle hiện tại đã cung cấp rất nhiều công cụ cho phép quản trị cơ sở dữ liệu
như:
- Server Manager Line Mode: Công cụ quản trị cơ sở dữ liệu Oracle theo chế
độ dòng lệnh.
- SQL*Plus Line Mode: Đây là một tiện ích sử dụng cho việc quản trị như:
starting up, shutting down, hoặc phục hồi database.
- Oracle Enterprise Manager: Là công cụ có giao diện đồ họa để thực hiện việc
quản trị, điều khiển và thay đổi một hoặc nhiều database.
- SQL*Loader: Tiện ích sử dụng để nạp các file bên ngoài vào trong các bảng
của Oracle.
- Công cụ Export và Import: Tiện ích sử dụng để exporting hoặc importing dữ
liệu theo khuôn dạng của Oracle.


15
- Password File: Tiện ích sử dụng để tạo file mật khẩu trong database.
Trong đó Server Manager Line Mode và Oracle Enterprise Manager là 2 công
cụ thường dùng nhất để quản trị cơ sở dữ liệu.
1.3.2.1. Server Manager Line Mode
Chương này mô tả cách sử dụng Server Manager trong chế độ dòng lệnh. Chế
độ dòng lệnh hữu ích cho việc thực hiện các hoạt động không cần giám sát, chẳng
hạn như chạy hàng loạt các công việc, hàng loạt hoặc các tập lệnh. Ngoài ra, bạn có
thể sử dụng chế độ dòng lệnh khi một công cụ sử dụng đồ họa không có sẵn.
1.3.2.2. Oracle Enterprise Manager
Oracle Enterprise Manager (OME) là phương tiện cho phép có được cái nhìn
tổng thể về toàn bộ hệ thống. Trong đó có cây phân cấp và các hình ảnh đồ họa về
các đối tượng và quan hệ giữa chúng trong hệ thống.
OME có các tiến trình Intelligent Agent processes cho phép quản lý từ xa các
dịch vụ chung - common services như jobs, events,... một cách dễ dàng.
OME cũng bao gồm cả những ứng dụng quản lý chuyên biệt: DBA
Management Pack, Advanced Management Packs.
Bên cạnh đó, OME còn cung cấp một lượng lớn các hàm API cho phép tích
hợp với các hệ thống quản lý ứng dụng khác. Bao gồm cả các hệ thống quản lý của
Oracle và không phải của Oracle.
OEM Console có trong cả Windows NT và Windows 95.
 Kiến trúc OME
Kiến trúc OME là mở rộng của kiến trúc Client/Server, nó có kiến trúc ba lớp.
- Lớp thứ nhất chứa các Java-based console và các ứng dụng tích hợp cho
phép cài đặt và chạy bởi các Web browser.
- Lớp thứ hai là Oracle Management Server - OMS. Chức năng chính của
OMS là xử lý và quản trị tất cả các tác vụ của hệ thống, tập trung quản lý và phân
phối điều khiển giữa các clients và các nút điều khiển - managed nodes. OEM sử
dụng Oracle Enterprise Manager repository để duy trì dữ liệu hệ thống, dữ liệu ứng


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×