Đăng ký Đăng nhập
Trang chủ Giáo dục - Đào tạo Cao đẳng - Đại học Đại cương đề cương ôn thi môn quản trị cơ sở dữ liệu...

Tài liệu đề cương ôn thi môn quản trị cơ sở dữ liệu

.DOCX
53
39
58

Mô tả:

Có bán tại Photo Sỹ Giang Mới Câu hỏi ôn tập QUẢN TRỊ CƠ SỞ DỮ LIỆU 1. Đồng bộ hóa cơ sở dữ liệu là gì? Mục tiêu và ngữ cảnh ứng dụng của đồng bộ hóa cơ sở dữ liệu..........................................................................................................4 2. Các thành phần đồng bộ hóa dữ liệu. Mô tả bằng hình vẽ mô hình đồng bộ hóa một Publisher với một Subcriber........................................................................4 4. Các thành phần đồng bộ hóa dữ liệu. Mô tả bằng hình vẽ mô hình đồng bộ hóa một Publisher với nhiều Subcriber.....................................................................5 5. Các thành phần đồng bộ hóa dữ liệu. Mô tả bằng hình vẽ mô hình đồng bộ hóa nhiều Publisher với một Subcriber.....................................................................6 6. Các thành phần đồng bộ hóa dữ liệu. Mô tả bằng hình vẽ mô hình đồng bộ hóa nhiều Publisher với nhiều Subcriber..................................................................6 7. . Mô tả các chế độ bảo mật trong SQL Server.?...................................................7 8. Phân biệt các dạng người dùng và nhóm quyền (role) trong SQL Server ?.......9 9. Sao lưu và phục hồi cơ sở dữ liệu nhằm mục đích gì. Liệt kê một số nguyên nhân cần phải xem xét tới việc sao lưu và phục hồi dữ liệu?...................................9 10. Sao lưu dữ liệu là gì? Mô tả các dạng sao lưu dữ liệu trong SQL Server 2008 .................................................................................................................................... 10 Câu 11: Phục hồi dữ liệu là gì? Mô tả các mô hình phục hồi dữ liệu trong SQL Server 2008................................................................................................................11 Các bước tiến hành...................................................................................................12 1. Phục hồi bản sao lưu Full từ Disk/Tape/Cloud...................................................12 2. Khôi phục bản sao lưu Full vào database bằng lệnh của SQL Server..............12 Câu 12: Thủ tục lưu trữ trong SQL Server là gì? Thủ tục lưu trữ có thể hỗ trợ cho hoạt động quản trị cơ sở dữ liệu như thế nào?.................................................14 Câu 14: Triger là gì? Có mấy loại Triger và trường hợp ứng dụng của từng loại .................................................................................................................................... 16 Có bán tại Photo Sỹ Giang 1 Mới Có bán tại Photo Sỹ Giang Mới Câu 15: Ngôn ngữ T-SQL trong SQL Server có những điểm khác biệt gì so với SQL chuẩn? Sự khác biệt này giúp ích gì cho hoạt động quản trị cơ sở dữ liệu trong môi trường SQL Server..................................................................................17 Câu 16: Hệ quản trị cơ sở dữ liệu là gì? Mô tả ba dịch vụ cơ bản của SQL Server .................................................................................................................................... 17 Câu 17: Mô tả cách thức căn bản để tăng tốc câu lệnh truy vấn cơ sở dữ liệu. Execution Plan trong SQL Server cung cấp cho nhà quản trị những thông tin gì? .................................................................................................................................... 21 Câu 18: Mô hình hệ quản trị cơ sở dữ liệu khách/chủ (client /server) là gì? SQL Server có những đặc trưng gì để đáp ứng là một hệ quản trị cơ sở dữ liệu theo mô hình khách/chủ....................................................................................................23 Câu 20: Bảo mật cơ sở dữ liệu là gì? Các khái niệm chính trong bảo mật cơ sở dữ liệu được quản trị bằng SQL Server........................................................................24 Để xem tất cả các users của một database, có thể dùng lệnh exec sp_helpuser hoặc trong SSMS (Database/Security/Users)..........................................................25 Server role (vai trò phía Server) Role là tập hợp một số các quyền được nhóm lại và có một tên đại diện để thuận tiện cho việc quản lý. Server role là nhóm các quyền ở mức server mà login khi được cấp sẽ có thể thực hiện một số thao tác xác định ở mức server. Các Server Roles trong SQL Server như sau:................25 Câu 21: . Nêu vai trò và nhiệm vụ của quản trị viên cơ sở dữ liệu........................27 Bài 1: Tổng quan quản trị cơ sở dữ liệu..................................................................28 Bài 6: Quản trị server...............................................................................................29 Câu 2: kỹ thuật phân bảng thường ứng dụng trong điều kiện nào?........................30 Bài 7: Tự động hóa quản trị.....................................................................................31 Bài 8: đồng bộ hóa dữ liệu........................................................................................31 Bài 9: bảo mật dữ liệu...............................................................................................34 Bài 10: toàn vẹn dữ liệu............................................................................................35 Bài 11: Sao lưu và phục hồi csdl..............................................................................36 ĐỀ 1:..........................................................................................................................36 Câu 1: đồng bộ hóa dữ liệu là gì? Mục tiêu và ngữ cảnh đồng bộ hóa dữ liệu?...36 Câu 2: Cho CSDL Bán Hàng gồm các lược đồ quan hệ sau:.................................37 Có bán tại Photo Sỹ Giang 2 Mới Có bán tại Photo Sỹ Giang Mới Câu 3: Hãy viết một thủ tục hệ thống sao lưu csdl trên một ổ đĩa bất kỳ và phục hồi csdl trên và ghi đè lên csdl đang sử dụng..........................................................40 ĐỀ 2:..........................................................................................................................41 Câu 1: Mô tả các chế độ bảo mật trong sql server:................................................41 Câu 2: Xét cơ sở dữ liệu QLNV gồm các lược đồ sau:...........................................43 Câu 3: Giong đề 1......................................................................................................45 Câu 4: Hãy tạo một tài khoản đăng nhập cho Ngô Tuấn Phong, đặt tên là PhongNT, pass Phong123. Người dùng này có quyền SELECT trên bảng Nhanvien và Lamviec................................................................................................45 Đề 3:...........................................................................................................................45 Câu 1: Phân biệt các dạng người dùng và nhóm quyền trong sql server.............45 Câu 2: Cho CSDL DA gồm các lược đồ quan hệ sau:............................................47 Câu 3: hãy viết một thủ tục hệ thống sao lưu csdl trên một ổ đĩa bất kỳ và phục hồi csdl trên và không ghi đè lên csdl đang sử dụng...............................................50 Câu 4: hãy tạo một tài khoản đăng nhập cho Ngô Tuấn Phong, đặt tên là PhongNT, pass Phong123. Người dùng này có quyền truy cập vào csdl DA và có quyền tạo bảng, tạo khung nhìn trên csdl...............................................................50 Đề 4:...........................................................................................................................51 Câu 1: Sao lưu và phục hồi dữ liệu nhằm mục đích gì?Liệt kê............................51 Câu 2:......................................................................................................................... 51 Có bán tại Photo Sỹ Giang 3 Mới Có bán tại Photo Sỹ Giang Mới 1. Đồng bộ hóa cơ sở dữ liệu là gì? Mục tiêu và ngữ cảnh ứng dụng của đồng bộ hóa cơ sở dữ liệu -Đồng bộ hóa cơ sở dữ liệu (replication) là một bộ công nghệ để sao chép,phân phối dữ liệu và các đối tượng cơ sở dữ liệu từ một CSDL này tới một CSDL khácvà cập nhật thay đổi giữa các cơ sở dữ liệu để duy trì sự nhất quán cho CSDL. -SQL Server đã đưa ra nhiều quy chế nhân bản để đáp ứng các yêu cầu khác nhau của ứng dụng.Mỗi loại cung cấp các khả năng và thuộc tính khác nhau nhằm đạt đến mục tiêu chính của tính độc lập của các chương trình ứng dụng và sự nhất quán dữ liệu. Đảm bảo an toàn cho CSDL và khả năng truy cập từ xa đến CSDL. Đảm bảo dữ liệu luôn sẵn sàng trong mọi thời điểm, địa điểm khi cần -Đồng bộ hóa cơ sở dữ liệu được sử dụng khi: +sao chép, phân phối dữ liệu trên nhiều server khác nhau +phân phối bản sao dữ liệu theo lịch trình nhất định +cho phép nhiều người dùng nhiều server khác nhau , dữ liệu khác nhau 1 cách thống nhất mà không sợ mất dữ liệu +xây dựng CSDL sử dụng cho nhiều ứng dụng +xây dựng ứng dụng wed khi người dùng cần trình bày một số lượng lớn dữ liệu 2. Các thành phần đồng bộ hóa dữ liệu. Mô tả bằng hình vẽ mô hình đồng bộ hóa một Publisher với một Subcriber Sơ lược về thành phần của đồng bộ hóa dữ liệu: Đối tượng: Publisher (máy chủ), Subscriber(máy khách), Distributor (cầu nối trung gian giữa Publisher và Subscriber) Dữ liệu đồng bộ hóa: Article (tập csdl được cấu hình đề đồng bộ hóa), Publication (tập các Article), Subscription (được xem như đơn đặt hàng để nhận các Article từ nhiều Publisher bao gồm nhiều ràng buộc khi thực hiện phân phối Article) Dịch vụ: SQL Server Agent Có bán tại Photo Sỹ Giang 4 Mới Có bán tại Photo Sỹ Giang Mới 4. Các thành phần đồng bộ hóa dữ liệu. Mô tả bằng hình vẽ mô hình đồng bộ hóa một Publisher với nhiều Subcriber Có bán tại Photo Sỹ Giang 5 Mới Có bán tại Photo Sỹ Giang Mới 5. Các thành phần đồng bộ hóa dữ liệu. Mô tả bằng hình vẽ mô hình đồng bộ hóa nhiều Publisher với một Subcriber 6. Các thành phần đồng bộ hóa dữ liệu. Mô tả bằng hình vẽ mô hình đồng bộ hóa nhiều Publisher với nhiều Subcriber Có bán tại Photo Sỹ Giang 6 Mới Có bán tại Photo Sỹ Giang Mới 7. . Mô tả các chế độ bảo mật trong SQL Server.? Các chế độ bảo mật gồm có: 1. Login và user SQL Server cho phép truy nhập vào hệ thống thông qua các login. Chỉ khi có quyền ở mức độ nhất định bạn mới có thể tạo thêm login. Trong SSMS bạn có thể xem các login này bằng cách mở rộng node Security/Logins. Các login này mới chỉ có quyền truy nhập vào server chứ chưa hẳn đã truy nhập được vào các database chứa trong đó. Đến lượt mỗi database lại duy trì một danh sách các user, các user này luôn luôn đính (mapped) với một login ở mức server. Khi bạn đăng nhập vào SQL Server thông qua login này, bạn sẽ có quyền truy nhập vào database theo quyền hạn mà user tương ứng với nó được cung cấp. Bạn xem các user này bằng cách mở rộng node Security/Users của database tương ứng. Ví dụ, tôi có một login tên là vuht2000 trong SQL Server. Ở database db1 tôi có user vuht2000 được gắn với login vuht2000, và user này chỉ có quyền đọc. Ở database db2 tôi cũng có user vuht2000 được gắn với cùng login trên, và user này có quyền đọc/ghi. Khi truy nhập vào SQL Server bằng login vuht2000, bạn sẽ có quyền đọc trên database db1 và đọc/ghi trên database db2. 2. Server role Role thực chất là tập hợp một nhóm các quyền và đại diện bằng một tên để thuận tiện cho việc quản lý. Server role là nhóm các quyền ở mức server mà login khi được cấp sẽ có thể thực hiện một số thao tác nhất định ở mức server. Ví dụ role sysadmin có toàn quyền hoạt động trong server (tạo database, khởi động lại server…) và tự khắc nó cũng có quyền truy nhập vào tất cả database, diskadmin chỉ có quyền trong các thao tác về đĩa (như bổ sung thêm file vào database…). Login khi mới được tạo sẽ có role public, role này thực chất không có quyền gì ngoài quyền truy nhập vào server. Thông thường chỉ DBA mới nên có quyền sysadmin, còn các developer chỉ cần role public và bổ sung thêm khi cần. Có bán tại Photo Sỹ Giang 7 Mới Có bán tại Photo Sỹ Giang Mới 3. Database role Cũng với mục đích như vậy, database role tập hợp các quyền truy nhập vào database thành từng nhóm để dễ tạo lập và sửa đổi. Ví dụ role db_datareader có quyền đọc dữ liệu từ tất cả các bảng, role db_datawriter có quyền ghi vào tất cả các bảng; role db_owner có quyền cao nhất trong database (tạo bảng, tạo thủ tục, thực thi thủ tục…). Các user đều mặc định có role public. Khi user chỉ có role public, user chỉ có thể nhìn thấy tên database mà không có quyền gì khác. 4. Authentication SQL Server xác thực các đăng nhập bằng hai cơ chế, windows authentication và SQL Server authentication. Việc này bắt nguồn từ khi tạo login trong SQL Server. Khi bạn tạo một login mới, SQL Server sẽ yêu cầu bạn chọn cơ chế xác thực windows hay SQL Server cho login đó. Nếu chọn windows, bạn cần cung cấp một windows account và SQL Server sẽ chỉ lưu tên của account đó trong danh sách login. Nếu chọn SQL Server authentication, bạn cần cung cấp login name và password và cả hai đều được lưu trong SQL Server. Khi đăng nhập vào SQL Server, bạn cũng sẽ phải chọn một trong hai cơ chế xác thực. Nếu chọn windows, chính account hiện đang đăng nhập vào windows được dùng. Bạn không có quyền chọn login và thực tế, SQL Server sẽ vòng xuống windows và kiểm tra xem account nào đang đăng nhập vào windows, nó sẽ lấy account đó và xem có nằm trong danh sách login của nó hay không. Nếu có thì nó cho vào còn nếu không nó sẽ chặn lại. Còn với SQL Server authentication thì cơ chế giống như bình thường – bạn cung cấp login ID và password. SQL Server sẽ kiểm tra và quyết định có cho vào hay không. Một điểm cần lưu ý là với login sử dụng windows authentication, SQL Server chỉ lưu login name và không hề lưu password. Và khi đăng nhập nếu bạn cố tình chọn sang SQL Server authentication, hệ thống sẽ không xác thực cho bạn. Có bán tại Photo Sỹ Giang 8 Mới Có bán tại Photo Sỹ Giang Mới 8. Phân biệt các dạng người dùng và nhóm quyền (role) trong SQL Server ? -Dạng người dùng: +Login: Dùng để truy cập vào hệ thống SQL Server, các Login chỉ mới có quyền truy cập vào Server chứ chưa hẳn có quyền truy cập vào các Database trên Server, các quyền truy cập vào Database được gắn liền với các người + User: Mỗi Database có một danh sách các người dùng được phép truy cập CSDL của mình, mỗi user luôn được gắn (mapped) với một login ở mức Server. Khi bạn đăng nhập vào SQL Server thông qua login này, bạn sẽ có quyền truy cập vào database theo quyền hạn mà user tương ứng với nó được cấp. Mỗi login có thể gắn với một hoặc nhiều user với quyền hạn khác nhau trên các Database. -Các nhóm quyền: +Select: truy xuất dữ liệu. +Update:Cập nhập dữ liệu +Insert:thêm dữ liệu mới +Delete:xoá dữ liệu +Execute:thực thi một stored procedure hay một hàm +References:tạo các đối tượng tham chiếu tới đối tượng này. +All:có tất cả các quyền đối với đối tượng. 9. Sao lưu và phục hồi cơ sở dữ liệu nhằm mục đích gì. Liệt kê một số nguyên nhân cần phải xem xét tới việc sao lưu và phục hồi dữ liệu? Mục đích: -Sao lưu cơ sở dữ liệu: Sao lưu-backup một cơ sở dữ liệu (CSDL) là tạo một bản sao CSDL, ta có thể dùng bản sao để khôi phục lại CSDL nếu CSDL bị mất. Bản sao gồm tất cả những file có trong CSDL kể cả transaction log. -Phục hồi cơ sở dữ liệu: Việc khôi phục một bản sao lưu CSDL sẽ trả về CSDL cùng trạng thái của CSDL khi ta thực hiện việc sao lưu. Giao dịch (transaction) nào không hoàn thành trong khi sao lưu (backup) CSDL được roll back để đảm bảo tính nhất quán CSDL. Có bán tại Photo Sỹ Giang 9 Mới Có bán tại Photo Sỹ Giang Mới Khôi phục một bản sao lưu transaction log là áp dụng lại tất cả giao dịch (transaction) hoàn thành trong transaction log đối với CSDL. Khi áp dụng bản sao lưu transaction log, SQL Server đọc trước transaction log, roll forward tất cả các transaction . Khi đến cuối bản sao lưu transaction log, SQL Server roll back tất cả transaction mà không hoàn thành khi ta bắt đầu thực hiện sao lưu, tạo lại trạng thái chính xác của CSDL tại thời điểm bắt đầu thực hiện sao lưu. Một số nguyên nhân cần phải xem xét tới việc sao lưu và phục hồi dữ liệu: Nguyên nhân khách quan: Sự cố xảy ra ngoài ý muốn, con người không thể biết trước được, thường là các thảm họa (VD: thiên tai, cháy nổ,…). Do đó cần cất giữ bản sao ở xa bản chính. Nguyên nhân chủ quan: Sự cố xảy ra do những thao tác không chính xác của con người (ví dụ: lỗi phần cứng, lỗi phần mềm, thao tác nhầm…). Do đó cần cất giữ bản sao ở vị trí sao cho thuận lợi cho việc phục hồi dữ liệu, không nhất thiết phải lưu trữ ở nơi xa bản chính. 10. Sao lưu dữ liệu là gì? Mô tả các dạng sao lưu dữ liệu trong SQL Server 2008 - Sao lưu CSDL là tạo một bản sao CSDL. Bản sao này có thể được sử dụng để khôi phục lại CSDL trong trường hợp CSDL gặp sự cố. Bản sao gồm tất cả các tập tin có trong CSDL và tập tin nhật ký giao dịch ( Transaction log file ) - Transaction log file chứa những dữ liệu thay đổi trong CSDL và được được sử dụng trong suốt quá trình khôi phục để roll forward những transaction hoàn thành và roll back những transact chưa hoàn thành. Các dạng sao lưu dữ liệu ( backup) trong SQL server 2008 ) - Full backup : sao lưu một bản đầy đủ của CSDL trren các phương tiện lưu trữ . Quá trình full backup có thể tiến hành mà không cần offline CSDL , nhưng quá trình này lại chiếm một lượng lớn tài nguyên hệ thống và có thể ảnh hưởng nghiêm trọng tới thời gian đáp ứng các yêu cầu của hệ thống. - Differential backup : được xây dựng nhằm làm giảm thời gian cần thiết để thực hiện quá trình full backup. Differential backup chỉ sao lưu những thay đổi trên dữ liệu Có bán tại Photo Sỹ Giang 10 Mới Có bán tại Photo Sỹ Giang Mới kể từ lần full backup gần nhất. Trong những hệ thống CSDL lớn , quá trình differential backup sẽ sử dụng tài nguyên ít hơn rất nhiều so với quá trình full backup và có thể không ảnh hưởng đến hiệu suất của hệ thống. - Backup Compression là một tính năng mới trong SQL Server 2008. Nó có thể giảm được đến 20% kích thước vật lý của file gốc. Nếu tính năng này được sử dụng, Restore sẽ tự động nhận ra file nén này. Tuy nhiên có một điểm yếu đối với tính năng này đó là chiếm dụng nhiều tài nguyên máy tính trong suốt quá trình backup. - Transaction log backup : ghi nhận lại một cách thứ tự tất cả các transaction chứa trong transaction log file kể từ lần transaction log backup gần nhất. - File or File Group Backup : copy một data file hay một file group Câu 11: Phục hồi dữ liệu là gì? Mô tả các mô hình phục hồi dữ liệu trong SQL Server 2008 Trả lời:  Phục hồi dữ liệu (Restore database), có nghĩa là có khả năng phục hồi dữ liệu, không làm mất mát dữ liệu ,chỉ được thực hiện khi nào máy chủ bị sự cố như hư ổ cứng hoặc dữ liệu bị mất do người dùng vô tình hoặc cố ý xoá,… Ngoài ra thao tác phục hổi dữ liệu cũng được thực hiện để sao chép database từ máy chủ này sang máy chủ khác.  Mô tả các mô hình phục hồi dữ liệu trong SQL SERVER 2008: Tình huống Bạn sử dụng bản sao lưu Full để phục hồi database nếu rơi vào một trong hai trường hợp sau:  Bản sao lưu Full là bản sao lưu gần thời điểm xảy ra sự cố nhất. Nghĩa là từ lúc tiến hành sao lưu Full đến lúc bị sự cố, bạn không có thêm bất kỳ bản sao lưu Differential hoặc Transaction log nào khác.  Database chỉ được sao lưu Full mà không sao lưu Differential hoặc Transaction log. Lý do có thể vì Recovery model của database là SIMPLE khiến bạn không thể sao lưu Transaction log, hoặc đơn giản vì bạn không tiến hành sao lưu Differential hoặc Transaction log. Lưu ý: Nếu muốn phục hồi database từ bản sao lưu Differential hay Transaction log, bạn vẫn phải phục hồi từ bản sao lưu Full ngay trước đó. Có bán tại Photo Sỹ Giang 11 Mới Có bán tại Photo Sỹ Giang Mới Các bước tiến hành Quá trình phục hồi database từ bản sao lưu Full được tiến hành theo 2 bước sau: 1. Phục hồi bản sao lưu Full từ Disk/Tape/Cloud 2. Khôi phục bản sao lưu Full vào database bằng lệnh của SQL Server 1. Phục hồi bản sao lưu Full từ Disk/Tape/Cloud Trước khi tiến hành bất kỳ thao tác khôi phục nào với SQL Server, bạn cần phải có bản sao lưu Full và tiến hành phục hồi dữ liệu từ bản sao lưu này vào máy tính. Tùy phần mềm/công cụ sao lưu trước đây, bạn tiến hành phục hồi theo hướng dẫn tương ứng. Lưu ý: Không có bản sao lưu thì không thể nói đến chuyện phục hồi hay bất kỳ thao tác nào khác để khôi phục lại database. Do đó, bạn cần có phương án sao lưu và lưu trữ an toàn các bản sao lưu. 2. Khôi phục bản sao lưu Full vào database bằng lệnh của SQL Server Sau khi có được bản sao lưu Full, bạn tiến hành khôi phục database vào SQL Server bằng lệnh RESTORE DATABASE. RESTORE DATABASE ERP FROM DISK = ‘E:\SQLRestoreData\DATABASE_ERP.bak’ GO Mặc định, lệnh RESTORE DATABASE sẽ khôi phục Data file và Log file vào thư mục trước đây của database (giá trị PhysicalName của lệnh RESTORE FILELISTONLY). Nếu thư mục này không tồn tại hoặc đã có file khác trùng tên thì lỗi sau xuất hiện: File ‘ERP’ cannot be restored to ‘C:\Program Files\Microsoft Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\ERP_Data.mdf’. Use SQL WITH MOVE to identify a valid location for the file Để khắc phục lỗi trên, bạn cần sử dụng tùy chọn MOVE để chỉ định tên thư mục sẽ chứa Data file và Log file được phục hồi. Nhưng trước hết, bạn cần truy xuất các thông tin dữ liệu của database bằng lệnh RESORE FILELISTONLY. RESTORE FROM Có bán tại Photo Sỹ Giang FILELISTONLY ERP DISK = ‘E:\SQLRestoreData\DATABASE_ERP.bak’ 12 Mới Có bán tại Photo Sỹ Giang Mới GO Sau đó, sử dụng lệnh RESTORE DATABASE với tùy chọn MOVE để khôi phục database vào thư mục chỉ định. RESTORE DATABASE ERP FROM DISK = ‘E:\SQLRestoreData\DATABASE_ERP.bak’ MOVE ‘ERP_Data’ TO ‘E:\SQLData\ERP_Data.mdf’ MOVE ‘ERP_Log’ TO ‘E:\SQLData\ERP_Log.ldf’ GO Sau khi lệnh RESTORE DATABASE được thực thi, database sẽ được khôi phục hoàn toàn và ở tình trạng có thể sử dụng được. Do đó, bạn không thể tiến hành phục hồi thêm từ bản sao lưu Differential hay Transaction log. Lưu ý: Nếu database cần khôi phục bị trùng database đã có trong SQL Server, lỗi sau sẽ xuất hiện: Msg 3159, Level 16, State 1, Line 1 The tail of the log for the database “ERP” has not been backed up. Use BACKUP LOG WITH NORECOVERY to backup the log if it contains work you do not want to lose. Use the WITH REPLACE or WITH STOPAT clause of the RESTORE statement to just overwrite Msg the 3013, contents Level 16, of State the 1, log. Line 1 RESTORE DATABASE is terminating abnormally. Với lỗi này, bạn sử dụng tùy chọn REPLACE để ghi đè database đang có. RESTORE FROM DATABASE ERP DISK = ‘E:\SQLRestoreData\DATABASE_ERP.bak’ WITH REPLACE GO Sau khi lệnh RESTORE DATABASE được thực thi xong, bạn refresh lại mục Databases trong SSMS và thấy database ERP vừa được phục hồi. Có bán tại Photo Sỹ Giang 13 Mới Có bán tại Photo Sỹ Giang Mới Câu 12: Thủ tục lưu trữ trong SQL Server là gì? Thủ tục lưu trữ có thể hỗ trợ cho hoạt động quản trị cơ sở dữ liệu như thế nào? Trả lời :  Thủ tục lưu trữ trong SQL server (Stored procedure) là: một đối tượng trong CSDL, bao gồm nhiều câu lệnh T-SQL được tập hợp lại với nhau thành một nhóm, và tất cả các lệnh này sẽ được thực thi khi thủ tục lưu trữ được thực thi. Với thủ tục lưu trữ, một phần nào đó khả năng của ngôn ngữ lập trình được đưa vào trong ngôn ngữ SQL. Thủ tục lưu trữ có thể có các thành phần sau: -Các cấu trúc điều khiển (IF, WHILE, FOR) có thể được sử dụng trong thủ tục. -Bên trong thủ tục lưu trữ có thể sử dụng các biến như trong ngôn ngữ lập trình nhằm lưu giữ các giá trị tính toán được, các giá trị được truy xuất được từ cơ sở dữ liệu.  Thủ tục lưu trữ có thể hỗ trợ cho hoạt động quản trị cơ sở dữ liệu : Một tập các câu lệnh SQL được kết hợp lại với nhau thành một khối lệnh bên trong một thủ tục. Một thủ tục có thể nhận các tham số truyền vào cũng như có thể trả về các giá trị thông qua các tham số (như trong các ngôn ngữ lập trình). Khi một thủ tục lưu trữ đã được định nghĩa, nó có thể được gọi thông qua tên thủ tục, nhận các tham số truyền vào, thực thi các câu lệnh SQL bên trong thủ tục và có thể trả về các giá trị sau khi thực hiện xong. Lợi ích của việc sử dụng thủ tục lưu trữ:  SQL Server chỉ biên dịch các thủ tục lưu trữ một lần và sử dụng lại kết quả biên dịch này trong các lần tiếp theo trừ khi người dùng có những thiết lập khác. Việc sử dụng lại kết quả biên dịch không làm ảnh hưởng đến hiệu suất hệ thống khi thủ tục lưu trữ được gọi liên tục nhiều lần. Có bán tại Photo Sỹ Giang 14 Mới Có bán tại Photo Sỹ Giang Mới  Thủ tục lưu trữ được phân tích, tối ưu khi tạo ra nên việc thực thi chúng nhanh hơn nhiều so với việc phải thực hiện một tập rời rạc các câu lệnh SQL t ương đương theo cách thông thường.  Thủ tục lưu trữ cho phép chúng ta thực hiện cùng một yêu cầu bằng một câu lệnh đơn giản thay vì phải sử dụng nhiều dòng lệnh SQL. Điều này sẽ làm giảm thiểu sự lưu thông trên mạng.  Thay vì cấp phát quyền trực tiếp cho người sử dụng trên các câu lệnh SQL và trên các đối tượng cơ sở dữ liệu, ta có thể cấp phát quyền cho người sử dụng thông qua các thủ tục lưu trữ, nhờ đó tăng khả năng bảo mật đối với hệ thống. Câu 13: Kích hoạt (Trigger) là gì? Đặc điểm của Trigger. Trigger được sử dụng như thế nào trong việc đảm bảo tính toàn vẹn của của dữ liệu? Trả lời :  Kích hoạt ( Trigger) là : Triger có thể xem là một dạng đặc biệt của thủ tục nội tại, bởi vì bên trong nội dung của triger lưu trữ các câu lệnh dùng để thực hiện một số hành động nào đó mà người lập trình sẽ chỉ ra.  Đặc điểm của Trigger : Khác với thủ tục nội tại, trigger hoàn toàn không có tham số. Ngoài ra chúng ta có thể gọi thực hiện trực tiếp trigger bằng lệnh EXECUTE như thủ tục nội tại hoặc bằng bất kỳ một lệnh nào khác, thay vào đó trigger sẽ được thực hiện một cách tự động khi dữ liệu của bảng có liên quan đến trigger bị cập nhật. Chính nhờ vào tính năng đặc biệt là tự động thực hiện mà nội dung các lệnh bên trong trigger được dùng cho các công việc sau :  Kiểm tra các ràng buộc toàn vẹn dữ liệu phức tạp.  Thực hiện các xử lý được thiết kế thi hành tại server (trong mô hình client/server). Các xử lý mà ta muốn chúng sẽ được tự động thực hiện khi có thao tác INSERT, UPDATE hoặc DELETE xảy ra.  Trigger cũng được dùng để thay thế các constraint trong trường hợp ta muốn việc kiểm tra ràng buộc dữ liệu kèm theo các câu thông báo thích hợp theo ý muốn người dùng.  Trigger được sử dụng trong việc đảm bảo tính toàn vẹn của CSDL: Trên SQL Server, có 2 cách thực hiện ràng buộc toàn vẹn dữ liệu : Có bán tại Photo Sỹ Giang 15 Mới Có bán tại Photo Sỹ Giang Mới  Ràng buộc toàn vẹn dữ liệu bằng phương pháp mô tả (declarative data integrity).  Thực hiện ràng buộc dữ liệu theo phương pháp này chính là các công việc xác định ràng buộc khóa chính, khóa ngoại, kiểm tra miền giá trị, … và mô tả chúng tại thời điểm tạo table.  Đặc điểm cần biết của phương pháp này là việc kiểm tra sẽ được thực hiện trước khi cho phép ghi vào table.  Ràng buộc toàn vẹn dữ liệu bằng phương pháp theo thủ tục (procedural data integrity).  Trong phương pháp này, việc ràng buộc toàn vẹn dữ liệu được xác định bởi tập hợp các câu lệnh T-SQL. Các câu lệnh chứa bên trong đối tượng Trigger, chúng sẽ được gọi thi hành khi có thao tác thêm, xóa, hoặc sửa dữ liệu xảy ra trên table tương ứng.  Đặc điểm cần biết của phương pháp này là việc kiểm tra sẽ được thực hiện sau khi dữ liệu được ghi vào table. Câu 14: Triger là gì? Có mấy loại Triger và trường hợp ứng dụng của từng loại Trả lời:  Trigger là một kiểu stored procedure đặc biệt được kích nổ (thực thi) một cách tự động khi xảy ra một sự kiện trên Database server và không thể thực thi bằng tay.  Trigger ược chia ra làm hai nhóm: DML và DDL trigger. + DML triggers (hay Standart triggers) thực thi khi một người sử dụng cố gắng sửa đổi dữ liệu thông qua sự kiện thao tác dữ liệu (data manipulation language DML) INSERT, UPDATE, hoặc DELETE trên bảng hoặc view. DML triggers thường được sử dụng trong chính sách đảm bảo các quy tắc thương mại hoặc đảm bảo tính toàn vẹn dữ liệu. + DDL triggers được thực thi đáp ứng các sự kiện định nghĩa lược đồ dữ liệu (data definition language - DDL). Nhóm lệnh chính của các lệnh định nghĩa lược đồ dữ liệu là CREATE, ALTER, và DROP. Nhóm DDL trigger là nhóm trigger mới được bổ xung trong SQL Server 2005 Database Engine. Có bán tại Photo Sỹ Giang 16 Mới Có bán tại Photo Sỹ Giang Mới Câu 15: Ngôn ngữ T-SQL trong SQL Server có những điểm khác biệt gì so với SQL chuẩn? Sự khác biệt này giúp ích gì cho hoạt động quản trị cơ sở dữ liệu trong môi trường SQL Server. Trả lời:  Transact-SQL là ngôn ngữ SQL mở rộng dựa trên SQL chuẩn của ISO (International Organization for Standardization) và ANSI (American National Standards Institute) được sử dụng trong SQL Server khác với P-SQL (ProceduralSQL) dùng trong Oracle Câu 16: Hệ quản trị cơ sở dữ liệu là gì? Mô tả ba dịch vụ cơ bản của SQL Server (từ phiên bản 2008).  Hệ quản trị cơ sở dữ liệu (Database Management System - DBMS): Là một hệ thống phần mềm cho phép tạo lập cơ sở dữ liệu và điều khiển mọi truy nhập đối với cơ sở dữ liệu đó.  Microsoft SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relation Database Management System - RDBMS), cung cấp cách tổ chức dữ liệu bằng cách lưu chúng vào các bảng. Dữ liệu quan hệ được lưu trữ trong các bảng và các quan hệ đó được định nghĩa giữa các bảng với nhau. Người dùng truy cập dữ liệu trên Server thông qua ứng dụng. Người quản trị CSDL truy cập Server trực tiếp để thực hiện các chức năng cấu hình, quản trị và thực hiện các thao tác bảo trì CSDL. Ngoài ra, SQL Server là một CSDL có khả năng mở rộng, nghĩa là chúng có thể lưu một lượng lớn dữ liệu và hỗ trợ tính năng cho phép nhiều người dùng truy cập dữ liệu đồng thời.  Mô tả ba dịch vụ cơ bản của SQL Server ( từ phiên bản 2008): Gồm các dịch vụ cơ bản sau:  Dịch vụ MS SQL Server: Dùng quản lý tất cả các file gồm các CSDL mà SQL Server quản lý, là thành phần xử lý tất cả các lệnh của Transact-SQL được gửi từ các trình ứng dụng client, phân phối các nguồn tài nguyên khi có nhiều user cùng truy nhập một lúc. Đây là dịch Có bán tại Photo Sỹ Giang 17 Mới Có bán tại Photo Sỹ Giang Mới vụ quản trị cơ bản, khi ngắt dịch vụ này hệ thống sẽ ngưng tất cả các công việc khai thác dữ liệu.  Dịch vụ SQL Server Agent: Hỗ trợ các tính năng cho phép lập thời biểu các hoạt dộng theo từng giai đoạn tren SQL Server, hoặc thông báo cho người quản lý hệ thống về những sự cố của hệ thống, bao gồm các thành phần Jobs, Alerts, Operator.  Dịch vụ Microsoft Search. Cung cấp dịch vụ tìm kiếm và tìm kiếm văn bản với các phép toán cơ bản sau: + Ký tự (chuỗi): =, >, >=, <, <= được so sánh với một chuỗi hằng. + So sánh chuỗi nhỏ trong văn bản hoặc chuỗi có kích thước lớn, văn bản. Có bán tại Photo Sỹ Giang 18 Mới Có bán tại Photo Sỹ Giang Mới  Dịch vụ MS DTC. Là dịch vụ cho phép trong một phiên giao vận có thể sử dụng dữ liệu được phân phối trên nhiều server khác nhau, thực hiện theo các bước cơ bản sau: + Gọi các thủ tục lưu trữ trên các server xa sử dụng SQL Server + Tự động gọi hoặc tạo các phiên giao vận cục bộ và các giao vận với các máy chủ từ xa + Tạo bộ dữ liệu được cập nhật hoặc được phân phối bởi các server xa. Xem xét sơ đồ hoạt động sau: Có bán tại Photo Sỹ Giang 19 Mới Có bán tại Photo Sỹ Giang Mới Như sơ đồ trên khi client triệu gọi một thủ tục có sẵn đến server cục bộ, khi có yêu cầu dữ liệu trên server khác, thông qua dịch vụ MS DTC server cục bộ sẽ triệu gọi các thủ tục từ server từ xa, kết quả có thể tạo được bộ dữ liệu được tập trung từ nhiều server khác nhau: Có bán tại Photo Sỹ Giang 20 Mới
- Xem thêm -

Tài liệu liên quan