2. Các nôi dung đã học trong bài trước
Bảo mật trong SQL Server
Login ID
Người dùng CSDL (Database User)
Quyền và vai trò
Hệ thống bài cũ
Các nôi dung đã học trong bài trước
Bảo mật trong SQL Server
Login ID
Người dùng CSDL (Database User)
Quyền và vai trò
Quản trị CSDL 2
3. Mục tiêu bài học
1. Sao lưu & Phục hồi CSDL
2. Đặt lịch sao lưu tự động
Quản trị CSDL 3
2. Đặt lịch sao lưu tự động
3. System Stored Procedure
5. Khi làm việc với CSDL, đặc biệt là những tác vụ dễ xảy
ra sự cố như
Thử nghiệm tính năng mới
Sửa hoặc xóa dữ liệu quan trọng.
bạn nên tạo một bản sao CSDL để phục hồi khi có sự cố
Sao lưu cơ sở dữ liệu
Khi làm việc với CSDL, đặc biệt là những tác vụ dễ xảy
ra sự cố như
Thử nghiệm tính năng mới
Sửa hoặc xóa dữ liệu quan trọng.
bạn nên tạo một bản sao CSDL để phục hồi khi có sự cố
Quản trị CSDL 5
6. Các kiểu sao lưu CSDL
Full backup:
Sao lưu toàn bộ dữ liệu (kể cả các stored procedure, view,
hàm người dùng định nghĩa, transaction log…)
File tạo ra có phần mở rộng .bak
Differential backup:
Sao lưu các dữ liệu mới được cập nhật kể từ lần full backup
trước đó
File tạo ra có phần mở rộng .bak
Transaction log backup:
Sao lưu các bản ghi transaction log (các thao tác xảy ra trên
CSDL, không sao lưu dữ liệu)
File tạo ra có phần mở rộng .trn
Sao lưu cơ sở dữ liệu
Các kiểu sao lưu CSDL
Full backup:
Sao lưu toàn bộ dữ liệu (kể cả các stored procedure, view,
hàm người dùng định nghĩa, transaction log…)
File tạo ra có phần mở rộng .bak
Differential backup:
Sao lưu các dữ liệu mới được cập nhật kể từ lần full backup
trước đó
File tạo ra có phần mở rộng .bak
Transaction log backup:
Sao lưu các bản ghi transaction log (các thao tác xảy ra trên
CSDL, không sao lưu dữ liệu)
File tạo ra có phần mở rộng .trn
Quản trị CSDL 6
8. Sao lưu CSDL
- Click vào nút Remove để hủy vị
trí lưu File cũ.
- Click vào nút Add để chỉ định vị
trí lưu File mới
- Chọn đường dẫn lưu
File
- Nhập tên File. Chú ý
phải nhập đầy đủ phần
mở rộng .bak hoặc .trn
Quản trị CSDL 8
- Click vào nút Remove để hủy vị
trí lưu File cũ.
- Click vào nút Add để chỉ định vị
trí lưu File mới
- Chọn đường dẫn lưu
File
- Nhập tên File. Chú ý
phải nhập đầy đủ phần
mở rộng .bak hoặc .trn
9. Sao lưu CSDL
- Chế độ “Append to the existing
backup set” cho phép lưu nhiều
bản sao CSDL từ các lần sao lưu
khác nhau vào cùng một file
(tên file được chỉ định ở bước 2)
- Chế độ “Overwrite all existing
backup sets” chỉ giữ lại một bản
sao duy nhất của lần sao lưu
cuối cùng.
Quản trị CSDL 9
- Chế độ “Append to the existing
backup set” cho phép lưu nhiều
bản sao CSDL từ các lần sao lưu
khác nhau vào cùng một file
(tên file được chỉ định ở bước 2)
- Chế độ “Overwrite all existing
backup sets” chỉ giữ lại một bản
sao duy nhất của lần sao lưu
cuối cùng.
11. Phục hồi CSDL
-Chọn radio
button để chọn
file CSDL trên ổ
đĩa
-Click vào đây
để chỉ định vị
trí chứa file
CSDL
Quản trị CSDL 11
12. Phục hồi CSDL
Quản trị CSDL 12
-Chọn phiên bản của bản sao
lưu CSDL, để khôi phục CSDL ở
đây
13. Phục hồi CSDL
-Chọn radio button này khi
thực hiện phục hồi CSDL từ
một bản sao full bakup và
nhiều bản sao differential
backup
Quản trị CSDL 13
-Chọn radio button này khi
thực hiện phục hồi CSDL từ
một bản sao full bakup và
nhiều bản sao differential
backup
14. Càng thực hiện sao lưu nhiều càng giảm rủi ro khi có sự
cố.
Với các CSDL quan trọng, thực hiện nhiều thay đổi trong
ngày. Nên thực hiện nhiều lần sao lưu trong một ngày
Full Backup là phương pháp an toàn nhất, nhưng thực
hiện Full Backup nhiều sẽ tốn dung lượng bộ nhớ.
Nên:
Thực hiện sao lưu Full Backup một lần vào lúc bắt đầu một
ngày (chuẩn bị làm việc với CSDL)
Thực hiện nhiều sao lưu Differential backup trong ngày
(định kì khoảng một vài tiếng một lần)
Thực hiện nhiều sao lưu Transaction log backup trong
ngày
Gợi ý khi sao lưu/phục hồi CSDL
Càng thực hiện sao lưu nhiều càng giảm rủi ro khi có sự
cố.
Với các CSDL quan trọng, thực hiện nhiều thay đổi trong
ngày. Nên thực hiện nhiều lần sao lưu trong một ngày
Full Backup là phương pháp an toàn nhất, nhưng thực
hiện Full Backup nhiều sẽ tốn dung lượng bộ nhớ.
Nên:
Thực hiện sao lưu Full Backup một lần vào lúc bắt đầu một
ngày (chuẩn bị làm việc với CSDL)
Thực hiện nhiều sao lưu Differential backup trong ngày
(định kì khoảng một vài tiếng một lần)
Thực hiện nhiều sao lưu Transaction log backup trong
ngày
Quản trị CSDL 14
15. Khi có sự cố, tiến hành phục hồi như sau:
Phục hồi CSDL sử dụng bản sao lưu Full Backup
Phục hồi CSDL sử dụng bản sao lưu Differential backup ở
trước và gần thời điểm xảy ra sự cố
Phục hồi CSDL sử dụng bản sao lưu Transaction log
backup ở trước và gần thời điểm xảy ra sự cố
Gợi ý khi sao lưu/phục hồi CSDL
Khi có sự cố, tiến hành phục hồi như sau:
Phục hồi CSDL sử dụng bản sao lưu Full Backup
Phục hồi CSDL sử dụng bản sao lưu Differential backup ở
trước và gần thời điểm xảy ra sự cố
Phục hồi CSDL sử dụng bản sao lưu Transaction log
backup ở trước và gần thời điểm xảy ra sự cố
Quản trị CSDL 15
16. Nội dung demo
Tạo một bản sao lưu Full Backup (tên file APFull.bak)
Thay đổi dữ liệu trên CSDL (thêm một bảng mới “Test”)
Phục hồi CSDL sử dụng bản Full Backup (APFull.bak)
Kiểm tra CSDL được phục hồi về trạng thái trước khi bảng
“Test” được thêm vào
Demo sao lưu/phục hồi
CSDL sử dụng Full backup
Nội dung demo
Tạo một bản sao lưu Full Backup (tên file APFull.bak)
Thay đổi dữ liệu trên CSDL (thêm một bảng mới “Test”)
Phục hồi CSDL sử dụng bản Full Backup (APFull.bak)
Kiểm tra CSDL được phục hồi về trạng thái trước khi bảng
“Test” được thêm vào
Quản trị CSDL 16
17. Nội dung demo
Tạo một bản sao lưu Full Backup mới (APFull1.bak)
Thay đổi dữ liệu trên CSDL (thêm một bảng mới Test1)
Tạo một bản sao lưu Differential backup (APDiff1.bak)
Thay đổi dữ liệu trên CSDL (thêm một bảng mới Test2)
Tạo một bản sao lưu Differential bakup (APDiff2.bak)
Demo sao lưu CSDL sử dụng
Full backup & Differential backup
Nội dung demo
Tạo một bản sao lưu Full Backup mới (APFull1.bak)
Thay đổi dữ liệu trên CSDL (thêm một bảng mới Test1)
Tạo một bản sao lưu Differential backup (APDiff1.bak)
Thay đổi dữ liệu trên CSDL (thêm một bảng mới Test2)
Tạo một bản sao lưu Differential bakup (APDiff2.bak)
Quản trị CSDL 17
18. Nội dung demo
Phục hồi CSDL sử dụng bản Full Backup (APFull1.bak) &
Differential backup (APDiff1.bak)
Phục hồi CSDL sử dụng bản Full Backup APFull1.bak (chú ý
bước thứ 4 khi phục hồi CSDL (slide 13) chọn radio button
thứ 2)
Phục hồi CSDL sử dụng bản Differential backup APDiff1.bak
(chú ý bước thứ 4 khi phục hồi CSDL (slide 13) chọn radio
button thứ 1)
Kiểm tra CSDL đã được phục hồi về trạng thái sau khi thêm
bảng Test1 và trước khi thêm Test2
Demo phục hồi CSDL sử dụng
Full backup & Differential backup
Nội dung demo
Phục hồi CSDL sử dụng bản Full Backup (APFull1.bak) &
Differential backup (APDiff1.bak)
Phục hồi CSDL sử dụng bản Full Backup APFull1.bak (chú ý
bước thứ 4 khi phục hồi CSDL (slide 13) chọn radio button
thứ 2)
Phục hồi CSDL sử dụng bản Differential backup APDiff1.bak
(chú ý bước thứ 4 khi phục hồi CSDL (slide 13) chọn radio
button thứ 1)
Kiểm tra CSDL đã được phục hồi về trạng thái sau khi thêm
bảng Test1 và trước khi thêm Test2
Quản trị CSDL 18
19. Nội dung demo
Phục hồi CSDL sử dụng bản Full Backup (APFull1.bak) &
Differential backup (APDiff2.bak)
Phục hồi CSDL sử dụng bản Full Backup APFull1.bak (chú ý
bước thứ 4 khi phục hồi CSDL (slide 13) chọn radio button
thứ 2)
Phục hồi CSDL sử dụng bản Differential backup APDiff2.bak
(chú ý bước thứ 4 khi phục hồi CSDL (slide 13) chọn radio
button thứ 1)
Kiểm tra CSDL đã được phục hồi về trạng thái sau khi thêm
bảng Test1 và Test2
Demo phục hồi CSDL sử dụng
Full backup & Differential backup
Nội dung demo
Phục hồi CSDL sử dụng bản Full Backup (APFull1.bak) &
Differential backup (APDiff2.bak)
Phục hồi CSDL sử dụng bản Full Backup APFull1.bak (chú ý
bước thứ 4 khi phục hồi CSDL (slide 13) chọn radio button
thứ 2)
Phục hồi CSDL sử dụng bản Differential backup APDiff2.bak
(chú ý bước thứ 4 khi phục hồi CSDL (slide 13) chọn radio
button thứ 1)
Kiểm tra CSDL đã được phục hồi về trạng thái sau khi thêm
bảng Test1 và Test2
Quản trị CSDL 19
21. Đặt lịch sao lưu tự động là:
Tạo một kế hoạch cho SQL Server để SQL Server tự động
thực hiện sao lưu CSDL tại một thời điểm được ấn định
sẵn.
Để tạo lịch sao lưu tự động người dùng phải đăng nhập
bằng Login ID có vai trò “sysadmin”
Đặt lịch sao lưu tự động
Đặt lịch sao lưu tự động là:
Tạo một kế hoạch cho SQL Server để SQL Server tự động
thực hiện sao lưu CSDL tại một thời điểm được ấn định
sẵn.
Để tạo lịch sao lưu tự động người dùng phải đăng nhập
bằng Login ID có vai trò “sysadmin”
Quản trị CSDL 21
22. Nhấn chuột phải vào Maintenance Plans. Chọn New
Maintenance Plan
Đặt lịch sao lưu tự động
Quản trị CSDL 22
23. Đặt tên cho Maintenance Plan
Đặt lịch sao lưu tự động
Quản trị CSDL 23
24. Trang cấu hình lịch sao lưu tự động
Đặt lịch sao lưu tự động
Cấu hình thời gian thực hiện sao
lưu tự đọng
Quản trị CSDL 24
Cấu hình thời gian thực hiện sao
lưu tự đọng
Các nhiệm vụ
Chú ý: backup database task &
maintenance cleanup task
25. Ấn định thời gian thực hiện sao lưu CSDL
Đặt lịch sao lưu tự động
Quản trị CSDL 25
Nhấn chuột vào
đây
Đặt thời gian là giờ
mà CSDL ít được dùng
nhất
26. Thêm Back Up Database Task
Back Up Database Task: thực hiện sao lưu CSDL theo thời
gian đã ấn định
Đặt lịch sao lưu tự động
Quản trị CSDL 26
Kéo Back Up Database
Task sang khung bên
phải
27. Cấu hình Back Up Database Task
Trong bước 4: nhấn đúp chuột vào Back Up Database Task
Đặt lịch sao lưu tự động
-Chọn Backup Type là “Full”
-Chọn các CSDL muốn thực hiện sao
lưu trong mục Database(s)
Quản trị CSDL 27
-Chọn Backup Type là “Full”
-Chọn các CSDL muốn thực hiện sao
lưu trong mục Database(s)
-Chọn đường dẫn lưu bản sao CSDL
-Nhập bak vào mục Backup File
extension
28. Thêm Maintenance Cleanup Task vì sao lưu được thực
hiện thường xuyên, dẫn đến đầy bộ nhớ server
Maintenance Cleanup Task: Xóa các bản sao, mà có thời
gian sao lưu cũ hơn một khoảng thời gian cho trước.
Đặt lịch sao lưu tự động
Quản trị CSDL 28
Kéo Maintenance Cleanup Task sang
khung bên phahir
29. Cấu hình cho Maintenance Cleanup Task
Trong bước 6: Nhấn đúp chuột vào Maintenance Cleanup Task
Đặt lịch sao lưu tự động
Quản trị CSDL 29
- Chỉ định vị trí lưu File bản sao
CSDL và phần mở rộng của bản sao.
- Chỉ định khoảng thời gian, mà các bản
sao được sao lưu trong khoảng thời gian
này sẽ được giữ lại.
- Ví dụ trong hình sẽ giữ lại các bản sao
được sao lưu trong vòng 4 tuần và xóa các
bản sao cũ hơn
30. Chú ý: SQL Server chỉ thực hiện sao lưu tự động thành công khi
SQL Server Agent đang chạy
Nếu SQL Server Agent bị tắt. Có thể khởi động lại trong
SQL Server Management Studio
SQL Server Configuration Management
Đặt lịch sao lưu tự động
Chú ý: SQL Server chỉ thực hiện sao lưu tự động thành công khi
SQL Server Agent đang chạy
Nếu SQL Server Agent bị tắt. Có thể khởi động lại trong
SQL Server Management Studio
SQL Server Configuration Management
Quản trị CSDL 30
31. Tạo lịch sao lưu tự động cho CSLD AP
Kiểm tra, đảm bảo lịch sao lưu tự động hoạt động chính
xác
Thực thi lịch sao lưu bằng tay
Kiểm tra bản sao được tự động tạo ra khi đến thời điểm
được ấn định trên lịch.
Demo
Tạo lịch sao lưu tự động cho CSLD AP
Kiểm tra, đảm bảo lịch sao lưu tự động hoạt động chính
xác
Thực thi lịch sao lưu bằng tay
Kiểm tra bản sao được tự động tạo ra khi đến thời điểm
được ấn định trên lịch.
Quản trị CSDL 31
33. System Stored Procedure
Là những Stored Procedure được cung
cấp sẵn khi cài đặt SQL Server
Rất hữu ích khi thực hiện các hành
động quản trị và xem thông tin các đối
tượng trong SQL Server
System Stored Procedure
System Stored Procedure
Là những Stored Procedure được cung
cấp sẵn khi cài đặt SQL Server
Rất hữu ích khi thực hiện các hành
động quản trị và xem thông tin các đối
tượng trong SQL Server
Quản trị CSDL 33
34. Tham khảo System Stored Procedure tại:
http://msdn.microsoft.com/en-us/library/ms187961.aspx
Trên trang này các System Stored Procedure được phân
theo nhóm
Hai nhóm quan trọng chứa các System Stored Procedure
hay sử dụng
Database Engine Stored Procedures: chứa nhiều System
SP để xem thông tin các đối tượng trong SQL Server
Security Stored Procedures: chứa các System SP dùng cho
mục đích quản trị bảo mật hệ thống
System Stored Procedure
Tham khảo System Stored Procedure tại:
http://msdn.microsoft.com/en-us/library/ms187961.aspx
Trên trang này các System Stored Procedure được phân
theo nhóm
Hai nhóm quan trọng chứa các System Stored Procedure
hay sử dụng
Database Engine Stored Procedures: chứa nhiều System
SP để xem thông tin các đối tượng trong SQL Server
Security Stored Procedures: chứa các System SP dùng cho
mục đích quản trị bảo mật hệ thống
Quản trị CSDL 34
35. Thủ tục Mô tả
sp_Help [<tên đối tượng
CSDL>]
Trả về thông tin đối tượng CSDL. (bảng, view, stored
procedure…) Trả về tổng hợp tất cả đối tượng trong cơ sở
dữ liệu hiện thời, nếu không có tham số.
sp_HelpText <tên> Trả về văn bản của stored procedure, hàm người dùng
định nghĩa, trigger, hay view không mã hóa.
sp_HelpDb [<tên CSDL>] Trả về thông tin CSDL, hoặc toàn bộ cơ sở dữ liệu, nếu
không chỉ định tham số.
Giới thiệu một số
System Stored Procedure hữu ích
Trả về văn bản của stored procedure, hàm người dùng
định nghĩa, trigger, hay view không mã hóa.
sp_HelpDb [<tên CSDL>] Trả về thông tin CSDL, hoặc toàn bộ cơ sở dữ liệu, nếu
không chỉ định tham số.
sp_Helpfile Xem tên database vật lý và thuộc tính của các tập tin liên
quan đến database hiện tại. Dùng stored procedure này
để xác định tên vật lý của database cần detach hoặc
attach.
Quản trị CSDL 35
36. Giới thiệu một số
System Stored Procedure hữu ích
Thủ tục Mô tả
sp_Who [<ID đăng
nhập>]
Trả về thông tin người đang đăng nhập và các tiến trình
đang chạy. Trả về thông tin của toàn bộ người dùng đang
hoạt động, nếu không chỉ định tham số.
sp_Columns <tên> Trả về thông tin cột được định nghĩa trong bảng hoặc
view xác định.
sp_tables Xem danh sách các đối tượng có thể truy vấn trong
database hiện tại. Tất cả các đối tượng trong mệnh đề
FROM.
Quản trị CSDL 36
Trả về thông tin cột được định nghĩa trong bảng hoặc
view xác định.
sp_tables Xem danh sách các đối tượng có thể truy vấn trong
database hiện tại. Tất cả các đối tượng trong mệnh đề
FROM.
sp_columns <tên> Xem thông tin các cột trong 1 table hoặc view
sp_depends <tên> Xem danh sách các Stored Procedure, View phụ thuộc vào
(tham chiếu đến ) bảng hoặc view trong CSDL
37. Giới thiệu một số
System Stored Procedure hữu ích
Thủ tục Mô tả
sp_helpsrvrole '<Tên
Server Role>'
-Trả về danh sách tất cả Server Role nếu không được
truyền tham số
- Trả về thông tin mô tả cho Server Role được chỉ định
trong câu lệnh
sp_password '<Password
cũ>, '<password mới>',
'<Login ID>'
Thay đổi password cho một Login ID
Quản trị CSDL 37
sp_password '<Password
cũ>, '<password mới>',
'<Login ID>'
sp_helplogins Cung cấp thông tin về LoginID cùng với thông tin các
Database User liên kết với Login ID này
sp_addlogin Thêm một login ID mới
Sp_adduser Thêm một Database User cho một Login ID
38. Sinh viên có thể tham khảo các system stored procedure
khác tại trang
http://msdn.microsoft.com/en-us/library/ms187961.aspx
Sau đó sử dụng hai stored procedure sp_help hoặc
sp_helptext để xem định nghĩa và danh sách tham số
của một system stored procedure, để biết cách sử dụng
các stored procedure này.
Giới thiệu một số
System Stored Procedure hữu ích
Sinh viên có thể tham khảo các system stored procedure
khác tại trang
http://msdn.microsoft.com/en-us/library/ms187961.aspx
Sau đó sử dụng hai stored procedure sp_help hoặc
sp_helptext để xem định nghĩa và danh sách tham số
của một system stored procedure, để biết cách sử dụng
các stored procedure này.
Quản trị CSDL 38
40. Thiết lập phím tắt cho các Stored Procedure hệ thống
Sử dụng menu Tools > Option
Thiết lập phím tắt
cho các Stored Procedure hệ thống
Quản trị CSDL 40
41. Các nội dung đã học trong bài
Sao lưu và phục hồi CSDL
Sao lưu CSDL là quá trình tạo một bản sao CSDL để phục
hồi CSDL khi xảy ra sự cố
Các kiểu sao lưu CSDL
Full backup: Sao lưu toàn bộ dữ liệu (kể cả các stored
procedure, view, hàm người dùng định nghĩa, transaction
log…)
Differential backup: Sao lưu các dữ liệu mới được cập nhật
kể từ lần full backup trước đó
Transaction log backup: Sao lưu các bản ghi transaction log
(các thao tác xảy ra trên CSDL, không sao lưu dữ liệu)
Tổng kết
Các nội dung đã học trong bài
Sao lưu và phục hồi CSDL
Sao lưu CSDL là quá trình tạo một bản sao CSDL để phục
hồi CSDL khi xảy ra sự cố
Các kiểu sao lưu CSDL
Full backup: Sao lưu toàn bộ dữ liệu (kể cả các stored
procedure, view, hàm người dùng định nghĩa, transaction
log…)
Differential backup: Sao lưu các dữ liệu mới được cập nhật
kể từ lần full backup trước đó
Transaction log backup: Sao lưu các bản ghi transaction log
(các thao tác xảy ra trên CSDL, không sao lưu dữ liệu)
Quản trị CSDL 41
42. Đặt lịch sao lưu tự động
Tạo một kế hoạch cho SQL Server để SQL Server tự động
thực hiện sao lưu CSDL tại một thời điểm được ấn định
sẵn.
Để tạo lịch sao lưu tự động người dùng phải đăng nhập
bằng Login ID có vai trò “sysadmin”
Ba bước để tạo lịch sao lưu tự động
Ấn định thời gian SQL Server thực hiện sao lưu
Thêm và cấu hình Back Up Database Task
Thêm và cấu hình Maintenance Cleanup Task
Chú ý: Để SQL Server thực hiện sao lưu tự động thành
công phải cấu hình SQL Server Agent luôn chạy
Tổng kết
Đặt lịch sao lưu tự động
Tạo một kế hoạch cho SQL Server để SQL Server tự động
thực hiện sao lưu CSDL tại một thời điểm được ấn định
sẵn.
Để tạo lịch sao lưu tự động người dùng phải đăng nhập
bằng Login ID có vai trò “sysadmin”
Ba bước để tạo lịch sao lưu tự động
Ấn định thời gian SQL Server thực hiện sao lưu
Thêm và cấu hình Back Up Database Task
Thêm và cấu hình Maintenance Cleanup Task
Chú ý: Để SQL Server thực hiện sao lưu tự động thành
công phải cấu hình SQL Server Agent luôn chạy
Quản trị CSDL 42
43. SQL Server cung cấp các System Stored Procedure rất
hữu ích khi thực hiện các hành động quản trị và xem
thông tin các đối tượng trong SQL Server
Một số System Stored Procedure thường dùng:
Sp_help
Sp_helptext
Sp_depends
Sp_tables
….
Tham khảo thêm tại:
http://msdn.microsoft.com/en-us/library/ms187961.aspx
Tổng kết
SQL Server cung cấp các System Stored Procedure rất
hữu ích khi thực hiện các hành động quản trị và xem
thông tin các đối tượng trong SQL Server
Một số System Stored Procedure thường dùng:
Sp_help
Sp_helptext
Sp_depends
Sp_tables
….
Tham khảo thêm tại:
http://msdn.microsoft.com/en-us/library/ms187961.aspx
Quản trị CSDL 43