Các CSDL SQL Server tải thấp, do vậy chỉ cần đảm bảo an toàn về mặt dữ liệu, backup đầy đủ, dọn dẹp định kỳ; chu kỳ backup:
- Backup full: ngày 2 lần vào lúc 0h và 12h
- Backup transaction log: 20 phút backup 1 lần
1. Giám sát cơ sở dữ liệu
Giám sát dùng để chỉ việc kiểm tra trạng thái cơ sở dữ liệu (CSDL), thiết lập tên người sở hữu, tên tập tin, kích thước tập tin, lịch trình sao lưu…
Việc giám sát CSDL trên SQL Server có thể thực hiện chủ yếu qua SQL Server Management Studio hoặc T-SQL, và cũng có thể kiểm soát qua nhiều cách khác như các công cụ của bên thứ 3, tạo Job trong Server Agent…
Có thể kiểm tra trạng thái của CSDL xem là đang kết nối (Online) như trong hình dưới đây hoặc đang ở trạng thái khác (Offiline) như trong hình bên dưới.
CSDL đang trong trạng thái kết nối
TestDB hiện đang Offline
2. Vận hành CSDL
a. Cách khởi động và dừng các dịch vụ trong MS SQL Server
MS SQL Server mang tới 2 dịch vụ chính để tạo và duy trì cơ sở dữ liệu (CSDL). Ngoài ra còn có các dịch vụ bổ sung phục vụ các mục đích khác.
Hai dịch vụ chính của MS SQL Server gồm:
· SQL Server
· SQL Server Agent
Các dịch vụ bổ sung của MS SQL Server gồm:
· SQL Server Browser
· SQL Server FulL Text Search
· SQL Server Integration Services
· SQL Server Reporting Services
· SQL Server Analysis Services
Bạn có thể bắt đầu hoặc tạm ngưng sử dụng các dịch vụ nói trên bằng nhưng cách dưới đây.
Khởi động dịch vụ trong MS SQL Server
Để khởi động bất kì dịch vụ nào trong MS SQL Server, bạn có thể dùng 1 trong 2 cách dưới đây.
Cách 1: Sử dụng Services.msc
Bước 1: Đi tới hộp thoại Run, gõ services.msc và click OK. Màn hình dưới đây sẽ hiện ra.
Tìm dịch vụ trong hộp thoại Run của Windows
Bước 2: Để khởi động, click chuột phải vào dịch vụ bạn cần và chọn Start. Khi đó dịch vụ sẽ khởi động như trong hình dưới đây.
Đã khởi động dịch vụ được chọn
Cách 2: Dùng SQL Server Configuration Manager
Bước 1: Mở trình quản lý bằng các bước Start > All Programs > MS SQL Server 2012 > Configuration Tools > SQL Server Configuration Manager.
Danh sách dịch vụ hiện ra khi đã mở được trình quản lý
Bước 2: Chọn tên dịch vụ, click chuột phải và chọn Start. Dịch vụ khởi động thành công như hình bên dưới.
Khởi động thành công dịch vụ trong MS SQL Server
b. Dừng dịch vụ trong MS SQL Server
Để dừng dịch vụ trong MS SQL Server, sử dụng 1 trong 3 cách sau.
Cách 1: Dùng Services.msc
Bước 1: Đi tới hộp thoại Run, gõ services.msc và click OK. như trong Bước 1 - cách 1 khi khởi động dịch vụ.
Bước 2: Để dừng dịch vụ, click chuột phải và chọn Stop. Dịch vụ vừa chọn sẽ được dừng lại như trong hình bên dưới.
Cách 2: Dùng SQL Server Configuration Manager
Bước 1: Mở Configuration Manager bằng các bước như trong bước 2 - cách 2 khi khởi động dịch vụ.
Bước 2: Chọn dịch vụ cần dừng, click chuột phải và chọn Stop. Dịch vụ được chọn sẽ dừng lại.
Cách 3: Dùng SQL Server Management Studio SSMS
Bước 1: Kết nối tới bản cài của SQL Server như trong hình dưới.
Bản TESTINSTANCE của SQL ServerBước 2: Click chuột phải vào tên của bản cài và chọn Stop. Màn hình dưới đây sẽ hiện ra.
Hộp thoại khi chọn Stop bản cài SQL Server
Bước 3: Chọn Yes, màn hình dưới đây sẽ hiện ra.
Xác nhận lại việc dừng dịch vụ
Bước 4: Chọn Yes để đồng ý dừng dịch vụ SQL Server Agent. Dịch vụ này sẽ tạm ngừng như trong hình bên dưới.
Trạng thái SQL Server Agent là Disabled
c. Backup CSDL
Backup là một bản sao lưu dữ liệu/cơ sở dữ liệu. Việc sao lưu CSDL trong MS SQL Server là rất quan trọng để bảo vệ dữ liệu trước việc mất CSDL. Có 3 hình thức sao lưu chính trong MS SQL Server là Full/Database, Differential/Incremental, Transactional Log/Log.
Dưới đây là 2 cách để tạo bản sao lưu CSDL trong MS SQL Server Management Studio.
CÁCH 1: SAO LƯU DATABASE BẰNG T-SQL
Full/Database
Backup database <TEN DATABASE> to disk = '<DUONG DAN FILE BACKUP + TEN FILE>'
Differential/Incremental
Backup database <TEN DATABASE> to
disk = '<DUONG DAN FILE BACK UP + TEN FILE>' with differential
Transactional Log/Log
Backup log <TEN DATABASE> to disk = '<DUONG DAN FILE BACKUP + TEN FILE>'
Ví dụ: Lệnh dưới đây được dùng để sao lưu toàn bộ CSDL (Full/Database) có tên QTM tới địa chỉ D:\ với tên của bản sao lưu là QTM.bak
Backup database QTM to disk = 'D:\QTM.bak'
Lệnh dưới đây được dùng để sao lưu những thay đổi kể từ lần sao lưu gần nhất trên CSDL (Differential/Incremental) có tên QTM tới địa chỉ D:\ với tên của bản sao lưu là: TestDB_Full.bak
Backup database QTM to disk = 'D:\QTM.bak' with differential
Lệnh dưới đây được dùng để sao lưu một cách thứ tự tất cả giao dịch kể từ lần thực hiện sao lưu Transaction Log gần nhất trên CSDL (Transaction Log/Log) có tên QTM tới địa chỉ D:\ với tên của bản sao lưu là QTM.bak
Backup log QTM to disk = 'D:\QTM_log.trn'
CÁCH 2: DÙNG SQL SERVER MANAGEMENT STUDIO (SSMS)
Giao diện MS SQL Server Management Studio có thể khác nhau một chút trên các phiên bản, hướng dẫn dưới đây được thực hiện trên phiên bản 18, ở các bản cũ hơn bạn chỉ cần chuột phải vào CSDL cần sao lưu chọn Backup là được.
Bước 1: Kết nối tới bản cài CSDL và mở thư mục CSDL như trong hình dưới đây. Click chuột phải vào CSDL QTM và chọn Tasks > Back Up...:
Mở thư mục CSDL
Bước 2: Khi đó màn hình dưới đây sẽ xuất hiện.
Các thông tin lựa chọn hình thức sao lưu cho CSDL
Bước 3: Lựa chọn loại sao lưu CSDL và chọn đúng đường dẫn cho nơi lưu bản sao. Chọn Options ở góc trên bên trái màn hình, khi đó hộp thoại sau sẽ hiện ra.
Lựa chọn sao lưu CSDL khác
Bước 4: Chọn OK để tạo bản sao lưu cho QTM như trong hình dưới đây.
Tạo bản sao lưu thành công
Kiểm tra trong đường dẫn thư mục vừa chọn, bạn sẽ thấy file sao lưu.
File sao lưu của CSDL QTM vừa được tạo
b. Restore CSDL
Khôi phục là quá trình sao chép dữ liệu đã sao lưu và đưa các giao dịch được ghi lại vào dữ liệu của MS SQL Server. Hiểu đơn giản, đây là quá trình lấy file sao lưu và đưa nó trở lại CSDL.
Khôi phục CSDL có thể được thực hiện bằng 2 cách.
Cách 1: Sử dụng T-SQL
Cú pháp dưới đây được dùng để khôi phục CSDL.
Restore database <Your database name> from disk = '<Backup file location + file name>'
Ví dụ
Lệnh sau đây được dùng để khôi phục lại CSDL có tên TestDB đã có tập tin sao lưu tên là TestDB_Full.bak nằm tại địa chỉ D:\ nếu bạn chọn viết đè lên CSDL hiện tại.
Restore database TestDB from disk = ' D:\TestDB_Full.bak' with replace
Nếu bạn tạo CSDL mới bằng lệnh khôi phục này và không có đường dẫn, file ghi lại lịch sử trên máy chủ nói trên, hãy dùng lệnh dưới đây. Đảm bảo là có tồn tại đường dẫn D:\Data.
RESTORE DATABASE TestDB FROM DISK = 'D:\ TestDB_Full.bak' WITH MOVE 'TestDB' TO 'D:\Data\TestDB.mdf', MOVE 'TestDB_Log' TO 'D:\Data\TestDB_Log.ldf'
Cách 2: Sử dụng SQL Server Management Studio SSMS
Bước 1: Kết nối tới CSDL có tên TESTINSTANCE và click chuột phải vào thư mục, chọn Restore Database để hiện ra như hình dưới đây.
Khôi phục CSDL bằng lựa chọn sau khi click chuột phải
Bước 2: Chọn Device và chọn đường dẫn để mở tập tin sao lưu như trong hình dưới đây.
Tìm nơi đã lưu file sao lưu khi tạo trước đây
Bước 3: Click OK và màn hình dưới đây sẽ hiện ra.
Chọn CSDL cần khôi phục và tập tin sao lưu đã tạo trước đó
Bước 4: Chọn Files ở góc bên trái màn hình, hộp thoại dưới đây sẽ hiện ra.
Thông tin các file cho quá trình khôi phục CSDL
Bước 5: Chọn Options ở góc trái và click OK để bắt đầu khôi phục CSDL TestDB như trong hình dưới đây.
Khôi phục thành công CSDL TestDB