9/5/2016
CƠ SỞ DỮ LIỆU
QUẢN TRỊ CƠ SỞ DỮ LIỆU
NỘI DUNG
i
l
• Quản trị viên cơ sở dữ liệu
ữ d
u ệ
1
ở s
ơ c
• Cơ chế xác thực
2
t
• Quản trị người dùng
g n ố h ệ h
3
T
• Quản trị quyền và vai trò
n a u q g n ổ –
4
i
l
ữ d
ở s
• Quản trị sao lưu và phục hồi
u ệ
5
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
i
l
ữ d
ở s
ơ c
u ệ
t
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
1
9/5/2016
QUẢN TRỊ VIÊN CSDL
i
l
Trách nhiệm của Quản trị viên CSDL
ữ d
ở s
ơ c
Đảm bảo hiệu năng, tính toàn vẹn, tính bảo mật Lập kế hoạch, phát triển, khắc phục sự cố
u ệ
t
Các tác vụ quản trị
Bảo mật, tạo tài khoản người dùng và phân
quyền
T
Lập các chiến lược sao lưu CSDL để phục hồi
i
khi gặp sự cố
l
ữ d
Tạo lịch sao lưu CSDL tự động
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
XỬ LÝ TRUY CẬP TỚI CSDL
i
l
u ệ
USER
ữ d
ở s
Bảo mật
CSDL
ơ c
USER
t
Quyền (Permission)
Các câu lệnh SQL
Xác thực tài khoản đăng nhập
Schema
Vai trò (Role)
GROUP
T
g n ố h ệ h n a u q g n ổ
Quyền
Các đối tượng CSDL
–
USER
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
u ệ
BẢO MẬT CƠ SỞ DỮ LIỆU
i
l
CSDL được bảo mật thông qua
ữ d
Quyền (Permission)
ở s
ơ c
Quy định các hành động người dùng có thể thực hiện trên CSDL hoặc các đối tượng CSDL cụ thể
u ệ
t
Vai trò (Role)
Tập quyền được gán cho người dùng
T
i
l
Người dùng hoặc nhóm người dùng được gán các quyền và vai trò nhất định để truy cập tới CSDL
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
2
9/5/2016
i
l
ữ d
ở s
ơ c
u ệ
t
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
CƠ CHẾ XÁC THỰC
i
l
SQLServer hỗ trợ hai cơ chế xác thực
ữ d
Windows Authentication mode
ở s
ơ c
Xác thực sử dụng tài khoản đăng nhập hệ điều
hành Windows
u ệ
t
SQLServer and Windows Authentication mode
Tài khoản đăng nhập Windows Tài khoản SQLServer
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
LOGIN ID
i
l
Người dùng kết nối CSDL SQLServer
ữ d
ở s
ơ c
thông qua Login ID Windows Login ID
u ệ
t
g n ố h ệ h
CREATE LOGIN FROM WINDOWS
[WITH [DEFAULT_DATABASE = ]
[, DEFAULT_LANGUAGE = ]]
SQLServer Login ID
T
n a u q g n ổ
CREATE LOGIN
–
WITH PASSWORD = 'password‘ [MUST_CHANGE]
i
l
ữ d
ở s
[, DEFAULT_DATABASE =
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
u ệ
3
9/5/2016
VÍ DỤ
i
l
ữ d
ở s
ơ c
u ệ
t
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
QUY TẮC ĐẶT MẬT KHẨU
i
l
Không được để trống hoặc dùng các từ
ữ d
ngữ thông thường, dễ nhớ
ở s
ơ c
Không sử dụng tên máy, tên người sử
dụng
u ệ
t
Có nhiều hơn 8 ký tự Phải chứa ít nhất 3 trong số các ký tự sau
T
i
l
ữ d
ở s
Chữ cái viết hoa Chữ cái viết thường Chữ số Ký tự đặc biệt
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
i
l
ữ d
ở s
ơ c
u ệ
t
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
4
9/5/2016
DB USER – NGƯỜI DÙNG CSDL
i
l
Mỗi CSDL có danh sách người dùng được
ữ d
xác thực để truy cập CSDL đó
ở s
ơ c
Khi tạo DB User
u ệ
t
User chỉ có quyền chọn ngữ cảnh CSDL,
T
không có quyền thực thi các thao tác Trên CSDL Trên các đối tượng của CSDL đó
User cần được cấp quyền đối tượng và quyền
i
l
CSDL
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
DB USER – NGƯỜI DÙNG CSDL
i
l
ữ d
ở s
u ệ
CREATE USER
[{FOR|FROM} LOGIN ]
[WITH DEFAULT_SCHEMA = ]
ơ c
t
T
g n ố h ệ h n a u q g n ổ
ALTER USER WITH
[NAME = ]
[, DEFAULT_SCHEMA = ]
i
l
ữ d
ở s
ơ C
– u ệ
DROP USER
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
VÍ DỤ
i
l
ữ d
ở s
ơ c
u ệ
t
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
5
9/5/2016
i
l
ữ d
ở s
ơ c
u ệ
t
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
CÁC QUYỀN CƠ BẢN
i
l
u ệ
Quyền
Đối tượng áp dụng
Các thao tác được phép thực hiện
ữ d
ở s
SELECT
Truy xuất dữ liệu aaaaa
Bảng, View, Hàm giá trị bảng
ơ c
UPDATE
Cập nhật dữ liệu
Bảng, View, Hàm giá trị bảng
t
g n ố h ệ h
INSERT
Thêm dữ liệu mới
Bảng, View, Hàm giá trị bảng
n a u q
DELETE
Xóa dữ liệu
Bảng, View, Hàm giá trị bảng
T
Thực thi một thủ tục / hàm
g n ổ –
EXECUTE
Hàm, Thủ tục
i
l
u ệ
REFERENCES Tạo các đối tượng tham chiếu Bảng, View, Hàm
ữ d
ở s
ALL
Có tất cả các quyền
Bảng, View, Hàm, Thủ tục
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
VAI TRÒ (ROLE)
i
l
Vai trò là một tập các quyền
ữ d
Có thể dùng để gán cho một người dùng hoặc
ở s
ơ c
một nhóm người dùng.
u ệ
t
SQL Server đã xây dựng sẵn các vai trò
T
mặc định Vai trò Server mặc định Vai trò CSDL mặc định
i
l
Mỗi vai trò được gán một tập quyền
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
6
9/5/2016
VAI TRÒ SERVER MẶC ĐỊNH
i
l
u ệ
Vai trò
Mô tả
ữ d
ở s
ơ c
sysadmin
Thực hiện mọi thao tác trên server. Tất cả thành viên trong nhóm Windows BUILTIN\Administrators đều có vai trò này
t
securityadmin
Quản lý ID và mật khẩu đăng nhập Cấp, từ chối và thu hồi quyền trên CSDL
T
dbcreator
Tạo, thay đổi, xóa và khôi phục CSDL
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
VAI TRÒ CSDL MẶC ĐỊNH
i
l
u ệ
Vai trò
Mô tả
ữ d
Db_owner
Tất cả các quyền đối với CSDL
ở s
ơ c
Db_accessadmin
Thêm hoặc xóa LoginID của CSDL
Db_securityadmin
t
Quản trị quyền đối tượng, quyền CSDL, vai trò, các thành viên của vai trò
Db_datawriter
Thêm, xóa, cập nhật các bảng trong CSDL
Db_datareader
Truy xuất dữ liệu từ các bảng trong CSDL
T
Db_denydatawriter Không thêm, xóa, cập nhật các bảng trong CSDL
i
l
Db_denydatareader Không truy xuất dữ liệu từ tất cả các bảng trong CSDL
ữ d
ở s
Db_backupoperator
Thực hiện sao lưu CSDL và chạy các kiểm tra tính nhất quán trên CSDL
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
VAI TRÒ TỰ ĐỊNH NGHĨA
i
l
ữ d
u ệ
CREATE ROLE
[AUTHORIZATION owner_name]
ở s
ơ c
t
g n ố h
DROP ROLE
T
ệ h n a u q g n ổ – u ệ
GRANT
ON <đối tượng>
TO
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
7
9/5/2016
VÍ DỤ
i
l
ữ d
ở s
ơ c
u ệ
t
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
i
l
ữ d
ở s
ơ c
u ệ
t
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
SAO LƯU CƠ SỞ DỮ LIỆU
i
l
Full backup
ữ d
Sao lưu toàn bộ dữ liệu
ở s
ơ c
Differential backup
u ệ
t
Sao lưu các dữ liệu mới cập nhật kể từ lần full
backup gần nhất
Transaction log backup
T
Sao lưu các bản ghi transaction log (các thao
i
l
tác trên CSDL)
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
8
9/5/2016
SAO LƯU CƠ SỞ DỮ LIỆU
i
l
Sao lưu thường xuyên giúp hạn chế rủi ro
ữ d
khi gặp sự cố
ở s
ơ c
u ệ
t
Full backup là phương pháp an toàn và tiện lợi nhất nhưng tốn nhiều bộ nhớ và thời gian thực hiện Giải pháp thích hợp
Thực hiện full backup định kỳ (ngày / tuần /
T
tháng / năm)
i
l
ữ d
ở s
ơ C
Thực hiện nhiều “differential backup” hoặc “transaction log backup” giữa hai lần “full backup”
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
PHỤC HỒI CƠ SỞ DỮ LIỆU
i
l
Quy trình phục hồi cơ sở dữ liệu
ữ d
ở s
ơ c
Sử dụng bản sao lưu full backup gần nhất Sử dụng các bản sao differential backup kể từ
u ệ
lần full backup gần nhất đến hiện tại
t
Sử dụng các bản sao transaction log backup kể từ lần full backup gần nhất đến hiện tại
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ
VÍ DỤ
i
l
ữ d
ở s
ơ c
u ệ
t
T
i
l
ữ d
ở s
ơ C
Ths. Trịnh Hoàng Nam, namth@buh.edu.vn
g n ố h ệ h n a u q g n ổ – u ệ