Bài giảng Tạo và quản lý cơ sở dữ liệu
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Tạo và quản lý cơ sở dữ liệu", để 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:
- bai_giang_tao_va_quan_ly_co_so_du_lieu.ppt
Nội dung text: Bài giảng Tạo và quản lý cơ sở dữ liệu
- Chương 7 Tạo và quản lý cơ sở dữ liệu
- Mục tiêu bài học ◼ Hiểu rõ cơ sở dữ liệu hệ thống và cơ sở dữ liệu người dùng định nghĩa trong SQL Server 2005 ◼ Tổng quan các đặc trưng chính của cơ sở dữ liệu mẫu AdventureWorks ◼ Hiểu rõ làm thế nào để thêm các nhóm tập tin và các vết của giao dịch ◼ Liệt kê các kiểu trong cơ sở dữ liệu và hiểu rõ làm thế nào để hủy bỏ một cơ sở dữ liệu RDBMS and Data Management/ Session 7/2 of 25
- Các cơ sở dữ liệu được SQL hỗ trợ ◼ SQL Server 2005 hỗ trợ ba loại cơ sở dữ liệu: ◼ Được tạo ra bởi SQL Server. Các cơ sở dữ liệu này được sử dụng để lưu thông tin về SQL Server 2005. . Cơ sở dữ liệu hệ thống ◼ Hơn nữa, các cơ sở dữ liệu này còn được sử dụng để quản lý các cơ sở dữ liệu người dùng . ◼ Người sử dụng SQL Server 2005 có thể tạo các cơ sở dữ liệu người dùng định nghĩa Cơ sở dữ liệu người dùng định nghĩa ◼ Mục đích của các cơ sở dữ liệu này là để lưu dữ liệu của người sử dụng ◼ SQL Server cung cấp các cơ sở dữ liệu mẫu Cơ sở dữ liệu mẫu để người sử dụng làm việc với SQL Server 2005 ◼ Một cơ sở dữ liệu mẫu được giới thiệu trong SQL Server 2005 là AdventureWorks RDBMS and Data Management/ Session 7/3 of 25
- Các cơ sở dữ liệu hệ thống Các cơ sở dữ liệu hệ thống được hỗ trợ bởi SQL Server 2005 Cơ sở dữ liệu Mô tả master Cơ sở dữ liệu này lưu trữ các tất cả các thông tin ở mức hệ thống của một nhân bản SQL Server. msdb Cơ sở dữ liệu này được sử dụng bởi SQL Server Agent để nhắc nhở các công tác thực hiện theo lịch biểu và các công việc khác. model Cơ sở dữ liệu này được sử dụng như cơ sở dữ liệu mẫu cho tất cả các cơ sở dữ liệu được tạo ra trong một nhân bản cụ thể của SQL Server 2005. resource Cơ sở dữ liệu này là cơ sở dữ liệu chỉ đọc. Nó gồm các đối tượng hệ thống được gộp vào trong SQL Server 2005. tempdb Cơ sở dữ liệu này lưu dữ các đối được tạm và các tập kết quả trung gian RDBMS and Data Management/ Session 7/4 of 25
- Thay đổi dữ liệu hệ thống ◼ Người dùng không được phép cập nhật thông tin trực tiếp vào các đối tượng cơ sở dữ liệu hệ thống, như là các bảng hệ thống, các thủ tục lưu trữ hệ thống, và các khung nhìn danh mục. ◼ Người sử dụng có thể sử dụng các công cụ quản trị cho phép họ quản trị hệ thống và quản lý tất cả các người sử dụng và các đối tượng cơ sở dữ liệu. Đó là: ◼ SQL Server Management Studio ◼ SQL Server ManagementThay đổi dữObjects (SMO): Giao diện lập trình ứng dụng với các đốiliệutượng hệ thốngquản lý SQL Server ◼ Transact-SQL scripts and stored procedures: sử dụng các thủ tục lưu trữ hệ thống và các phát biểu ngôn ngữ truy vấn dữ liệu Transact-SQL RDBMS and Data Management/ Session 7/5 of 25
- Xem dữ liệu hệ thống ◼ Các ứng dụng cơ sở dữ liệu có thể xác định danh mục và thông tin hệ thống bằng cách sử dụng các tiếp cận sau đây: ◼ Khung nhìn danh mục hệ thống ◼ Các đối tượng quản lý SQL Server ◼ Các hàm danh mục, các phương thức, các thuộc tính, hoặc các tính chất của giao diện lập trình ứng dụng cơ sở dữ liệu. ◼ Các thủ tục lưu trữ và các hàm Ettreeryreyr Ertetertetet tettwet Xem dữ liệu hệ thống RDBMS and Data Management/ Session 7/6 of 25
- Cơ sở dữ liệu người dùng định nghĩa ◼ Để tạo một cơ sở dữ liệu người dùng, các thông tin sau được yêu cầu: ◼ Tên của cơ sở dữ liệu ◼ Người sở hữu hoặc người tạo cơ sở dữ liệu ◼ Kích thước của cơ sở dữ liệu ◼ Các tập tin và nhóm các tập tin được sử dụng để lưu trữ cơ sở dữ liệu Cú pháp để tạo một cơ sở dữ liệu người dùng là: CREATE DATABASE database_name [ ON [ PRIMARY ] [ [ , n ] [ , [ , n ] ] [ LOG ON { [ , n ] } ] ] [ COLLATE collation_name ] ] [;] RDBMS and Data Management/ Session 7/7 of 25
- Cơ sở dữ liệu người dùng định nghĩa kích thước của cơ sở dữ liệu có thể được mở rộng hoặc bị co lại. Khi một cơ sở dữ liệu người dùng không cần thiết nữa, nó có thể bị hủy bỏ Cú pháp để chỉnh sửa một cơ sở dữ liệu: ALTER DATABASE database_name { | | | MODIFY NAME = new_database_name | COLLATE collation_name }[;] Trong SQL Server 2005, quyền sở hữu của một cơ sở dữ liệu người dùng có thể thay đổi bằng cách sử dụng thủ tục sp_changedbowner. sp_changedbowner [ @loginame = ] ‘login’ RDBMS and Data Management/ Session 7/8 of 25
- Cơ sở dữ liệu người dùng định nghĩa ◼ Trong mỗi CSDL, các tùy chọn này là duy nhất cho mỗi cơ sở dữ liệu . ◼ Có thể thiết lập các tùy chọn CSDL bằng cách sử dụng mệnh đề SET của câu lệnh ALTER DATABASE. ◼ Bảng sau trình bày chi tiết các tùy chọn được hỗ trợ trong SQL Server 2005: Kiểu chọn lựa Mô tả Chọn lựa tự động Các điều khiển tự động của cơ sở dữ liệu. Chọn lựa con trỏ Các điều khiển đối xử con trỏ. Chọn lựa phục hồi Các điều khiển các mô hình phục hồi của cơ sở dữ liệu Chọn lựa trạng Các điều khiển trạng thái của cơ sở dữ liệu, như là thái tình trạng online/offline và kết nối của người dùng RDBMS and Data Management/ Session 7/9 of 25
- Cơ sở dữ liệu người dùng định nghĩa ◼ Ví dụ để tạo một CSDL: CREATE DATABASE [Customer_DB] ON PRIMARY ( NAME = N’Customer_DB’, FILENAME = N’ C:\Program Files\Microsoft SQL Server\MSSQL.1\ MSSQL\Data\Customer_DB.mdf’) LOG ON ( NAME = N’Customer_DB_log’, FILENAME = N’ C:\Program Files\Microsoft SQL Server\MSSQL.1 \MSSQL\Data\Customer_DB_log.ldf’) COLLATE SQL_Latin1_General_CP1_CI_AS ◼ Ví dụ để chỉnh sửa một CSDL: ALTER DATABASE Customer_DB MODIFY NAME = CUST_DB RDBMS and Data Management/ Session 7/10 of 25
- Cơ sở dữ liệu người dùng định nghĩa ◼ Ví dụ thay đổi quyền sở hữu của CSDL: USE CUST_DB EXEC sp_changedbowner ‘sa’ ◼ Ví dụ về thiết lập các lựa chọn cho CSDL: USE CUST_DB; ALTER DATABASE CUST_DB SET AUTO_SHRINK ON RDBMS and Data Management/ Session 7/11 of 25
- Cơ sở dữ liệu AdventureWorks ◼ AdventureWorks là một cơ sở dữ liệu mẫu mới đã được giới thiệu trong SQL Server 2005. ◼ Một công ty giả sử được gọi là công ty Adventure Works Cycles , Adventure Works Cycles là một công ty lớn sản xuất hàng hóa đa quốc gia . ◼ Cơ sở dữ liệu mẫu này gồm các phần sau: • AdventureWorks: cơ sở dữ liệu xử lý giao dịch trực tuyến (OLTP – Online Transaction Processing) • AdventureWorksDW: cơ sở dữ liệu kho (Data warehouse) • AdventureWorksAS: cơ sở dữ liệu dịch vụ phân tích (Analysis Services) RDBMS and Data Management/ Session 7/12 of 25
- Nhóm tập tin và ghi vết giao dịch ◼ Các tập tin: ◼ Là một đơn vị lưu trữ vật lý ◼ Có chứa các đối tượng CSDL ◼ Có một file logic và file vật lý ◼ Nhóm tập tin: ◼ Bao gồm nhiều tập tin được nhóm lại để thực hiện và quản lý một cách tốt hơn. ◼ Một nhóm tập tin logic có thể chứa nhiều tập tin vật lý. ◼ Trong mỗi nhóm tập tin gồm có nhiều tập tin liên quan với nhau và được lưu trong đối tượng của CSDL. ◼ Các đối tượng của CSDL giống như các bảng và chỉ mục có thể được tạo trên một nhóm các tập tin cụ thể. ◼ Bảng sau hiển thị các chi tiết về nhóm các tập tin được hỗ trợ trong SQL Server 2005: RDBMS and Data Management/ Session 7/13 of 25
- Nhóm tập tin và ghi vết giao dịch Nhóm tập tin Mô tả Primary Nhóm tập tin chứa tập tin chính. Các bảng hệ thống được đặt trong nhóm tập tin chính. User-defined Bất kỳ nhóm tập tin được tạo bởi người sử dụng tại thời điểm tạo hoặc thay đổi cơ sở dữ liệu. ➢ Thêm các nhóm tập tin vào một cơ sở dữ liệu ➢ Nhóm tập tin có thể được tạo khi tạo cơ sở dữ liệu hoặc thêm vào cơ sở dữ liệu database đã có. ◼ Một tập tin không thể là thành viên của nhiều hơn 1 nhóm tập tin tại cùng thời điểm. ◼ Các tập tin không thể di chuyển đến các nhóm tập tin khác sau khi các tập tin được thêm vào trong csdl. ◼ Nhóm tập tin có thể chỉ chứa các file dữ liệu và không có các file giao dịch. RDBMS and Data Management/ Session 7/14 of 25
- Nhóm tập tin và ghi vết giao dịch ◼ Thêm nhóm tập tin trong khi tạo CSDL. Cú pháp: CREATE DATABASE database_name [ ON [ PRIMARY ] [ [ , n ] [ , [ , n ] ] [ LOG ON { [ , n ] } ] ] [ COLLATE collation_name ] ] [;] RDBMS and Data Management/ Session 7/15 of 25
- Nhóm tập tin và ghi vết giao dịch ◼ Thêm nhóm tập tin vào CSDL đã có: Cú pháp ALTER DATABASE database_name { | | | MODIFY NAME = new_database_name | COLLATE collation_name } [;] RDBMS and Data Management/ Session 7/16 of 25
- Nhóm tập tin và ghi vết giao dịch ➢ Xem thông tin nhóm tập tin ➢ Các thuộc tính của cơ sở dữ liệu, tập tin, phân vùng, và các nhóm tập tin có thể được xem bằng một vài khung nhìn danh mục, các chức năng hệ thống, và các thủ tục lưu trữ. Trong bảng liệt kê một số hàm hệ thống, và các thủ tục lưu trữ hệ thống trả về thông tin của các cơ sở dữ liệu, các tập tin, và các nhóm tập tin.: Các hàm Mô tả DB_ID Hàm này trả về số ID của cơ sở dữ liệu. DB_NAME Hàm này trả về tên của cơ sở dữ liệu FILE_ID Hàm này trả về số ID của tập tin theo tên tập tin luận lý trong cơ sở dữ liệu hiện tại. FILE_NAME Hàm này trả về tên luận lý của tập tin theo số ID của tập tin cho trước. RDBMS and Data Management/ Session 7/17 of 25
- Nhóm tập tin và ghi vết giao dịch ◼ Giao dịch ◼ Nó ghi lại tất các các quá trình hoạt động của CSDL. ◼ Các mẫu tin ghi vết được sử dụng để phục hồi trở lại các thay đổi ➢ Phục hồi các giao dịch riêng lẻ Ghi vết ➢ Phục hồi các giao dịch không hoàn tất khi SQL Server giao dịch khởi tạo. ◼ Chuyển một cơ sở dữ liệu, tập tin, nhóm tập tin, hoặc trang đã phục hồi đến vị trí gặp lỗi. ➢ Hỗ trợ việc tái tạo giao dịch ➢ Hỗ trợ các giải pháp máy chủ standby RDBMS and Data Management/ Session 7/18 of 25
- Nhóm tập tin và ghi vết giao dịch ➢ Thêm các tập tin ghi vết vào một cơ sở dữ liệu Cú pháp: ALTER DATABASE database_name { } [;] ::= { ADD FILE [ , n ] [ TO FILEGROUP { filegroup_name | DEFAULT } ] | ADD LOG FILE [ , n ] | REMOVE FILE logical_file_name | MODIFY FILE } RDBMS and Data Management/ Session 7/19 of 25
- Các phương pháp thay đổi cơ sở dữ liệu Các kiểu thay đổi Các phương pháp thay đổi Tăng kích thước của Sử dụng phát biểu ALTER DATABASE hoặc các thuộc tính cơ sở cơ sở dữ liệu dữ liệu trong SQL Server Management Studio. Thay đổi vị trí vật lý Sử dụng phát biểu ALTER DATABASE của cơ sở dữ liệu Thêm tập tin ghi vết Sử dụng phát biểu ALTER DATABASE hoặc các thuộc tính cơ sở dữ liệu và giao dịch dữ liệu trong SQL Server Management Studio Co rút một cơ sở dữ Sử dụng phát biểu DBCC SHRINKDATABASE hoặc chọn lựa liệu Shrink Database trong SQL Server Management Studio, chấp nhận lựa chọn này trong mục cơ sở dữ liệu cần co rút. Co rút một tập tin cơ Sử dụng phát biểu DBCC SHRINKFILE sở dữ liệu Xóa bỏ các tập tin dữ Sử dụng phát biểu ALTER DATABASE hoặc các thuộc tính cơ sở dữ liệu hoặc tập tin ghi liệu trong Server Management Studio. vết Thêm một nhóm tập tin Sử dụng phát biểu ALTER DATABASE hoặc các thuộc tính cơ sở dữ vào cơ sở dữ liệu liệu trong Server Management Studio. RDBMS and Data Management/ Session 7/20 of 25
- Các phương pháp thay đổi cơ sở dữ liệu Các kiểu thay đổi Các phương pháp thay đổi Thay đổi nhóm tập Sử dụng phát biểu ALTER DATABASE. tin mặc định Thay đổi các chọn Sử dụng phát biểu ALTER DATABASE hoặc các thuộc lựa cơ sở dữ liệu tính cơ sở dữ liệu trong Server Management Studio. . Thay đổi người sở Sử dụng thủ tục lưu trữ hệ thống sp_changedbowner hữu cơ sở dữ liệu ◼ Hủy bỏ một cơ sở dữ liệu ◼ Các tập tin và dữ liệu kết hợp với cơ sở dữ liệu này được tự động xóa bỏ từ đĩa khi cơ sở dữ liệu bị xóa. ◼ Cú pháp: DROP DATABASE { database_name } RDBMS and Data Management/ Session 7/21 of 25
- Bản chụp cơ sở dữ liệu ◼ Tạo một bản chụp CSDL: ◼ Một bản chụp cơ sở dữ liệu là khung nhìn tĩnh, chỉ đọc của một cơ sở dữ liệu SQL Server. Bản chụp cơ sở dữ liệu là một đặc tính mới của Microsoft SQL Server 2005. ◼ Trong trường hợp một người dùng thực hiện một nhầm lẫn trong cơ sở dữ liệu gốc, cơ sở dữ liệu gốc này có thể được phục hồi về trạng thái trước đó khi bản chụp đã được tạo. Cú pháp: CREATE DATABASE database_snapshot_name ON ( NAME = logical_file_name, FILENAME = ‘os_file_name’ ) [ , n ] AS SNAPSHOT OF source_database_name [;] RDBMS and Data Management/ Session 7/22 of 25
- Bản chụp cơ sở dữ liệu BảnDữ chụp TạoliệuTạo được bảnđược CSDL chụp khôi sửa phụcđổi RDBMS and Data Management/ Session 7/23 of 25
- Bản chụp cơ sở dữ liệu Ưu điểm Nhược điểm Bản chụp cung cấp một thuận Bản sao của bản chụp không thể tiện, một bảng copy chỉ đọc của được tạo ra. dữ liệu. Bản chụp phải tồn tại trên cùng Khi một bản chụp được truy vấn, máy chủ cơ sở dữ liệu cùng với cơ không làm giảm hiệu suất của đối sở dữ liệu gốc. tượng được quan sát. Các tập tin dữ liệu của bản Một người sử dụng mới không thể chụp là nhỏ và được tạo ra rất được quyền truy cập vào dữ liệu nhanh. Nó chỉ lớn khi cơ sở dữ trong bản chụp. Quyền được thừa kế từ cơ sở dữ liệu gốc khi nó đã liệu là chủ thể thay đổi tồn tại tại thời điểm tạo ra bản thường xuyên. chụp. RDBMS and Data Management/ Session 7/24 of 25
- Tóm Tắt ◼ SQL Server hỗ trợ tốt cho cơ sở dữ liệu người dùng ➢ Các cơ sở dữ liệu hệ thống được sử dụng để lưu trữ thông tin về SQL Server 2005, và quản lý các cơ sở dữ liệu người dùng ➢ Các cơ sở dữ liệu người dùng định nghĩa được sử dụng để lưu trữ các thông tin của người sử dụng ➢ Các cơ sở dữ liệu người dùng định nghĩa có thể được tạo ra bằng cách sử dụng phát biểu CREATE DATABASE ➢ Nhóm tập tin của SQL Server 2005 gồm các tập tin dữ liệu ➢ Một vết giao dịch trong SQL Server 2005 lưu trữ tất cả các giao dịch và các thay đổi trong cơ sở dữ liệu được tạo ra bởi mỗi phiên giao dịch ➢ Một bản chụp cơ sở dữ liệu là chỉ đọc, là góc nhìn tĩnh của một cơ sở dữ liệu gốc RDBMS and Data Management/ Session 7/25 of 25