giáo trình phân tích, thiết kế xây dựng và quản trị các hệ thống cơ sở dữ liệu

400 661 3
giáo trình  phân tích, thiết kế xây dựng và quản trị các hệ thống cơ sở dữ liệu

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

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

Thông tin tài liệu

CHƯƠNG TRÌNH TỔNG THỂ CẢI CÁCH HÀNH CHÍNH CỦA CHÍNH PHỦ GIAI ĐOẠN (2001-2010) BAN ĐIỀU HÀNH ĐỀ ÁN 112 GIÁO TRÌNH PHÂN TÍCH, THIẾT KẾ, XÂY DỰNG VÀ QUẢN TRN CÁC HỆ THỐNG CƠ SỞ DỮ LIỆU (Giáo trình nộp lần 2) Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 2 Tháng 8 - 2004 Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 3 MỤC LỤC Lời giới thiệu 10 Chủ đề I: Khái niệm cơ sở dữ liệu 16 1. Giới thiệu chung 16 2. Các khái niệm cơ bản 17 2.1. Cơ sở dữ liệu 17 a. Các hệ thống xử lý tệp truyền thống 18 b. Cách tiếp cận cơ sở dữ liệu 22 2.2. Dữ liệu và thông tin 26 a. Dữ liệu 26 b. Dữ liệu và thông tin 28 c. Siêu dữ liệu 30 2.3. Kiều thực thể và bảng dữ liệu 32 a. Thực thể 32 b. Kiểu thực thể 32 c. Bảng dữ liệu hay quan hệ 35 2.4. Thuộc tính và trường dữ liệu 39 a. Thuộc tính 39 b. Trường dữ liệu 41 2.5. Liên kết giữa các thực thể 42 2.6. Khái niệm toàn vẹn dữ liệu 44 3. Ví dụ về một cơ sở dữ liệu 45 4. Các mô hình dữ liệu 48 4.1. Khái quát chung 48 4.2. Mô hình dữ liệu quan hệ 50 4.3. Một số mô hình dữ liệu khác 51 a. Mô hình dữ liệu mạng và mô hình dữ liệu phân cấp 51 b. Mô hình dữ liệu hướng đối tượng 52 5. Kho dữ liệu 53 Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 4 6. Kết luận 54 7. Bài tập 55 Chủ đề II: Phương pháp phân tích, thiết kế và xây dựng các hệ thống CSDL 56 1. Khái quát chung 56 2. Phân tích yêu cầu 57 2.1. Xác định dữ liệu cần lưu trữ 60 2.2. Xác định ứng dụng sẽ được cài đặt trên cơ sở dữ liệu 61 2.3. Xác định các thao tác thường xuyên được thực hiện 62 2.4. Một số kỹ thuật phân tích yêu cầu 63 a . Kỹ thuật phỏng vẫn 63 b. Kỹ thuật sử dụng phiếu khảo sát 65 c. Kỹ thuật phân tích tài liệu 65 3. Thiết kế cơ sở dữ liệu mức khái niệm 66 3.1. Lựa chọn giữa kiểu thực thể mạnh và kiểu thực thể yếu 67 a. Kiểu thực thể mạnh 67 b. Kiểu thực thể yếu 68 3.2. Lựa chọn giữa các loại thuộc tính 70 a. Thuộc tính đơn và gộp 70 b. Thuộc tính đơn trị và thuộc tính đa trị 71 c. Thuộc tính lưu trữ và thuộc tính dẫn xuất 72 d. Thuộc tính khoá hay thuộc tính định danh 73 3.3. Lựa chọn giữa các loại liên kết 77 a. Ba khái niệm cơ bản về liên kết 77 b. Các liên kết một-một (1:1) 81 c. Các liên kết một-nhiều (1:N) 82 d. Các liên kết nhiều-nhiều (M:N) 83 e. Thuộc tính cho liên kết 85 Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 5 3.4. Lựa chọn giữa kiểu thực thể và thuộc tính 87 3.5. Lựa chọn giữa kiểu thực thể và liên kết 89 3.6. Các phân cấp “là-một” 92 3.7. Một sơ đồ thực thể liên kết 95 3.8. Mô tả các ràng buộc trên dữ liệu 105 4. Thiết kế cơ sở dữ liệu mức logic 109 4.1. Giới thiệu chung về ngôn ngữ SQL 109 4.2. Ràng buộc toàn vẹn 110 a. Ràng buộc miền 111 b. Ràng buộc khoá 113 c. Các kích hoạt 114 4.3. Lựa chọn hệ quản trị CSDL 116 4.4. Bước một: Chuyển đổi các kiểu thực thể thông thường 117 4.5. Bước hai: Chuyển đổi các kiểu thực thể yếu 121 4.6. Bước ba: Chuyển đổi các liên kết giữa hai kiểu thực thể 124 a. Chuyển đổi các liên kết một-nhiều 124 b. Chuyển đổi các liên kết nhiều-nhiều 126 c. Chuyển đổi các liên kết một-một 129 4.7. Bước bốn: Chuyển đổi các kiểu thực thể kết nối 132 a. Trường hợp thuộc tính định danh không xác định 133 b. Trường hợp thuộc tính định danh đã xác định 135 4.8. Bước năm: Chuyển đổi các liên kết đơn 138 a. Chuyển đổi các liên kết đơn một-nhiều 139 b. Chuyển đổi các liên kết đơn nhiều-nhiều 141 4.9. Bước sáu: Chuyển đổi các liên kết giữa nhiều kiểu thực thể 143 4.10. Bước bảy: Chuyển đổi các phân cấp “là một” 146 4.11. Một sơ đồ cơ sở dữ liệu mức logic 150 Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 6 4.12. Kết luận 155 5. Tinh chỉnh sơ đồ dữ liệu và các dạng chuNn 157 5.1. Tinh chỉnh các lược đồ quan hệ 157 5.2. Phụ thuộc hàm 159 5.3. Các dạng chuNn 161 a. Dạng chuNn 1NF 161 b. Dạng chuNn 2NF 163 c. Dạng chuNn 3NF 166 6. Thiết kế cơ sở dữ liệu vật lý 171 6.1. Phân tích kích thước và nhu cầu sử dụng dữ liệu 172 6.2. Thiết kế các trường 173 a. Lựa chọn kiểu dữ liệu 173 b. Kiểm soát các toàn vẹn dữ liệu 174 6.3. Tổ chức các bản ghi vật lý và phi chuNn 177 a. Tổ chức các bản ghi vật lý 177 b. Phi chuNn 179 6.4. Tổ chức các tệp vật lý 188 a. Tổ chức tệp tuần tự 189 b. Tổ chức tệp chỉ mục 190 c. Tổ chức các tệp băm 196 d. Tổ chức các tệp được phân cụm (clustering) 196 6.5. Lựa chọn và sử dụng các loại chỉ mục 198 6.6. RAID 207 6.7. Tối ưu hoá hiệu năng truy vấn 217 7. Thiết kế an toàn bảo mật 219 7.1. Xác định các nhóm sử dụng và các quyền hạn 221 7.2. Xác định quyền hạn thao tác trên dữ liệu 222 7.3. Mã hoá dữ liệu 240 7.4. Vai trò của người quản trị 245 8. Kết luận 247 9. Bài tập 247 Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 7 Chủ đề III: Quản trị hệ thống cơ sở dữ liệu 250 1. Khái quát chung 250 2. Các mô hình tổ chức cơ sở dữ liệu 251 2.1. Các hệ cơ sở dữ liệu tập trung 252 a. Hệ cơ sở dữ liệu cá nhân 252 b. Hệ cơ sở dữ liệu trung tâm 253 c. Hệ cơ sở dữ liệu khách/chủ 254 2.2. Các hệ cơ sở dữ liệu phân tán 254 a. Hệ cơ sở dữ liệu phân tán thuần nhất 255 b. Hệ cơ sở dữ liệu phân tán không thuần nhất 256 3. Quản trị hệ thống cơ sở dữ liệu 257 3.1. Quản trị nội dung cơ sở dữ liệu 263 a. Theo dõi cơ sở dữ liệu 263 b. Hiệu chỉnh cơ sở dữ liệu 265 c. Sao lưu và phục hồi dữ liệu 266 3.2. Quản trị kỹ thuật 267 a. Cài đặt, cấu hình hệ thống 268 b. Đảm bảo về đường truyền, mạng 269 c. Quản trị tài nguyên cơ sở dữ liệu 269 3.3. Đảm bảo an ninh, phân quyền truy nhập 270 3.4. Một số lỗi thường gặp và cách khắc phục 271 a. Không thể truy cập được cơ sở dữ liệu 271 b. Hệ thống báo lỗi timeout (chậm quá thời gian cho phép) 272 c. Hệ thống báo lỗi Out of Memory (tràn bộ nhớ) . 273 d. Không thể cung cấp được dữ liệu 274 e. Virus 274 4. Kết luận 275 5. Bài tập 276 Chủ đề IV: Một số hệ quản trị cơ sở dữ liệu phổ biến 277 Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 8 1. Giới thiệu chung 277 2. Hệ quản trị cơ sở dữ liệu 280 2.1. Kiến trúc của một hệ quản trị cơ sở dữ liệu 280 2.2. Lưu trữ dữ liệu trong một hệ quản trị cơ sở dữ liệu 282 2.3. Truy vấn trong một hệ quản trị cơ sở dữ liệu 283 3. Một số hệ thống quản trị cơ sở dữ liệu thông dụng . 284 3.1. Các hệ quản trị cơ sở dữ liệu cỡ vừa và nhỏ 284 a. Hệ quản trị cơ sở dữ liệu Access 284 b. Hệ quản trị cơ sở dữ liệu Visual Foxpro 295 3.2. Các hệ quản trị cơ sở dữ liệu cỡ lớn 311 a. Hệ quản trị cơ sở dữ liệu SQL Server 311 b. Hệ quản trị cơ sở dữ liệu Oracle 340 3.3. Hệ quản trị cơ sở dữ liệu mã nguồn mở 368 3.4. Nhận xét chung 370 4. Minh hoạ đối với một hệ quản trị cơ sở dữ liệu cụ thể 373 5. Kết luận 373 6. Bài tập 374 Phụ lục A: Các hệ thống CSDL sẽ được xây dựng trong khuôn khổ dự án 112 375 1. Mô hình tổ chức hệ thống CSDL các cấp 375 2. Các cơ sở dữ liệu phục vụ điều hành, quản lý 377 a. Cơ sở dữ liệu phục vụ hệ thống thông tin quản lý đơn thư khiếu nại tố cáo 377 b. Cơ sở dữ liệu phục vụ HTTT luật và văn bản qui phạm pháp luật 378 c. Các cơ sở dữ liệu ứng dụng chuyên ngành 379 3. Các cơ sở dữ liệu phục vụ dịch vụ công 380 4. Các cơ sở dữ liệu quốc gia 382 Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 9 Phụ lục B: Phân tích, thiết kế cơ sở dữ liệu cho một cửa hàng sách 383 1. Phân tích yêu cầu 383 2. Thiết kế cơ sở dữ liệu mức khái niệm 384 3. Thiết kế cơ sở dữ liệu mức logic 386 4. Tinh chỉnh lược đồ 390 5. Thiết kế cơ sở dữ liệu vật lý 392 6. Vấn đề an toàn bảo mật 395 Tài liệu tham khảo 399 Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 10 Lời giới thiệu Tài liệu này được biên soạn trong khuôn khổ đào tạo thuộc Đề án 112 với thời gian tập huấn chính thức là 45 tiết. Mục tiêu chính của tài liệu này là: • Nhằm trang bị cho học viên các kiến thức và kỹ năng cơ bản trong việc phân tích, thiết kế và xây dựng các hệ thống cơ sở dữ liệu. • Giúp học viên có đủ kiến thức cơ sở và những kỹ năng cần thiết để có thể quản trị các hệ thống cơ sở dữ liệu • Cung cấp cho học viên một số kinh nghiệm cần thiết để có thể vận hành, quản trị hệ thống và khắc phục một số sự cố và sửa lỗi thông thường đối với các hệ quản trị CSDL. Trong khi trình bày, chúng tôi đã cố gắng Việt hoá hầu hết các thuật ngữ tiếng Anh. Với các ví dụ chúng tôi cố gắng sử dụng tiếng Việt để diễn giải và đặt tên các đối tượng bằng tiếng Anh (ví dụ: kiểu thực thể nhân viên EMPLOYEE, thuộc tính mã hiệu nhân viên Emp_no, ). Đối với phần thực hành của giáo trình, tuỳ theo từng đối tượng học viên khác nhau, giảng viên có thể lựa chọn một trong số các hệ quản trị cơ sở dữ liệu quen thuộc như: Access, Visual Foxpro, Sql Server, Oracle, Khi chuNn bị môi trường thực hành, giảng viên nên lưu ý những điểm sau: [...]... thiết kế cơ sở dữ liệu Bên cạnh đó, chúng ta cũng sẽ xem xét các mô hình dữ liệu khác nhau đối với cơ sở dữ liệu. Tuy nhiên xin lưu ý rằng các quá trình phân tích, thiết kế, xây dựng và quản trị cơ sở dữ liệu được tập trung trình bày trong giáo trình này sẽ là cơ sở dữ liệu quan hệ, một loại cơ sở dữ liệu được xây dựng dựa trên mô hình dữ liệu quan hệ có lý thuyết toán Phân tích, thiết kế, xây dựng và quản. .. trọng nhất của giáo trình Do vậy thời gian dành cho chủ đề này sẽ khoảng từ 14 đến 16 tiết, tuỳ từng đối tượng học viên Nội dung của chủ đề tập trung vào 6 bước chính của quá trình phân tích, thiết kế và xây dựng hệ thống cơ sở dữ liệu: phân tích yêu cầu, thiết kế cơ sở dữ liệu mức khái niệm, thiết kế cơ sở dữ liệu mức Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 12 logic, tinh... bởi các hệ thống xử lý dựa trên cơ sở dữ liệu Tuy nhiên sự hiểu biết về các hệ thống xử lý tệp vẫn là cần thiết bởi hai lý do cơ bản sau: Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 18 • Ngày nay các hệ thống xử lý tệp vẫn còn được sử dụng trong một số hệ thống, đặc biệt là các hệ thống phục vụ sao lưu cơ sở dữ liệu • Hiểu được các vấn đề cũng như các giới hạn của các hệ thống. .. việc thiết kế và khai thác cơ sở dữ liệu, chúng ta cần làm quen với những khái niệm tiếp theo bởi chúng sẽ được sử dụng thường xuyên trong quá trình phân tích, thiết kế cơ sở dữ liệu Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 31 2.3 Ki u th c th và b ng d a li u Thực thể Thực thể là một khái niệm được sử dụng thường xuyên trong quá trình phân tích, thiết kế cơ sở dữ liệu Vậy... khi hệ cơ sở dữ liệu được đưa vào sử dụng và các hướng giải quyết, đây chính là một quá trình thường gặp với các bài toán thực tế Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 15 Ch đ I: Khái ni m cơ s d li u Mục tiêu Trong chủ đề này các bạn cần phải nắm được các khái niệm cơ bản nhất về cơ sở dữ liệu, cũng như các khái niệm được sử dụng trong quá trình phân tích, thiết kế, xây. .. thấp Lý do thứ hai đó là các hệ quản trị cơ sở dữ liệu thường cung cấp một loạt các công cụ hỗ trợ mức cao trong quá trình Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 24 xây dựng ứng dụng, như các công cụ sản sinh mẫu biểu sinh báo cáo hay các giao diện nhập liệu cho chương trình ứng dụng • Áp đặt dễ dàng các tiêu chuNn: Với cách tiếp cận cơ sở dữ liệu, các tiêu chuNn như quy... những ưu điểm mà cách tiếp cận cơ sở dữ liệu mang lại Một cơ sở dữ liệu thường được tích hợp vào trong một hệ quản trị cơ sở dữ liệu, đó là một chương trình máy tính (hay chính xác hơn là một bộ các chương trình máy tính) được xây dựng để quản lý một cơ sở dữ liệu Chúng ta sẽ tìm hiểu kỹ hơn về các hệ quản trị cơ sở dữ liệu trong chủ đề 4 của giáo trình Phần tiếp theo chúng ta sẽ tìm hiểu các khái niệm... bốn hệ quản trị cơ sở dữ liệu đã trình bày để giúp học viên thực hành Tuy nhiên chúng tôi đề xuất là giảng viên nên lựa chọn hệ quản trị cơ sở dữ liệu Microsoft SQL Server, và nếu có điều kiện thì lựa chọn hệ quản trị cơ sở dữ liệu Oracle, bởi với hệ quản trị cơ sở dữ liệu này, giảng viên minh hoạ được cả quá trình thiết kế từ sơ đồ thực thể liên kết, sơ đồ dữ liệu, thông qua công cụ Oracle Phân tích,. .. định được tập các thuộc tính chúng nhất giữa chúng c Bảng dữ liệu hay quan hệ Trong quá trình phân tích cơ sở dữ liệu, chúng ta sử dụng khái niệm kiểu thực thể để minh hoạ cho một lớp các thực thể giống nhau Bảng dữ liệu chính là hình thức thể hiện cụ Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 35 thể của kiểu thực thể khi chúng ta xây dựng cơ sở dữ liệu, và bảng dữ liệu được sử... thông qua công cụ Oracle Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 14 Designer, phần mà ở các hệ quản trị cơ sở dữ liệu khác chưa có Phụ lục A: Các hệ thống CSDL sẽ được xây dựng trong khuôn khổ dự án 112 Nội dung của phụ lục này nhằm giới thiệu với các học viên một số nét chính về hệ thống các cơ sở dữ liệu mang tính chất định hướng sẽ được xây dựng trong khuôn khổ dự án 112 . chức cơ sở dữ liệu 251 2.1. Các hệ cơ sở dữ liệu tập trung 252 a. Hệ cơ sở dữ liệu cá nhân 252 b. Hệ cơ sở dữ liệu trung tâm 253 c. Hệ cơ sở dữ liệu khách/chủ 254 2.2. Các hệ cơ sở dữ liệu phân. sở dữ liệu cỡ vừa và nhỏ 284 a. Hệ quản trị cơ sở dữ liệu Access 284 b. Hệ quản trị cơ sở dữ liệu Visual Foxpro 295 3.2. Các hệ quản trị cơ sở dữ liệu cỡ lớn 311 a. Hệ quản trị cơ sở dữ liệu. (Giáo trình nộp lần 2) Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ sở dữ liệu 2 Tháng 8 - 2004 Phân tích, thiết kế, xây dựng và quản trị các hệ thống cơ

Ngày đăng: 06/07/2014, 04:14

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan