Tìm hiểu 4 Systems Databases của SQL Server

9:00 08/01/2023

Trong bài viết này, hãy cùng tìm hiểu về 4 cơ sở dữ liệu hệ thống (Systems Databases) của SQL Server nhé!

Theo mặc định, SQL Server cung cấp 4 cơ sở dữ liệu (CSDL) hệ thống (systems databases), bao gồm:

  • master: lưu trữ tất cả mức hệ thống thông tin của một SQL Server instance.
  • msdb: được SQL Server Agent sử dụng để lên lịch cho các công việc và các cảnh báo.
  • model: sử dụng để làm mẫu (template) cho việc tạo các CSDL khác.
  • tempdb: lưu trữ các đối tượng tạm thời và được tạo lại mỗi khi SQL Server khởi động.

master

Cơ sở dữ liệu master lưu trữ tất cả mức hệ thống thông tin của một SQL Server instance, bao gồm:

  • Các thiết đặt của máy chủ
  • Tài khoản đăng nhập
  • Thông tin máy chủ được liên kết
  • Thủ tục lưu trữ (stored procedure) khởi động
  • Vị trí của các cở sở dữ liệu người dùng

Nếu CSDL master không khả dụng thì máy chủ SQL Server không thể khởi động. Do đó, khi làm việc với CSDL master, nên:

  1. Luôn có một bản sao lưu của CSDL master hiện hành đang hoạt động bình thường để dự phòng các trường hợp CSDL master xảy ra lỗi, hỏng.
  2. Sao lưu CSDL master càng sớm càng tốt sau khi thực hiện các thao tác:
    • Tạo, sửa đổi và xóa bất kỳ CSDL nào
    • Thay đổi cấu hình máy chủ
    • Cập nhật tài khoản đăng nhập (thêm, sửa, xóa tài khoản)
  3. Không tạo đối tượng người dùng trong CSDL master
  4. Không thiết đặt giá trị thuộc tính TRUSTWORTHY là ON (Lưu ý rằng nếu giá trị thuộc tính TRUSTWORTHY được thiết lập là ON, SQL Server sẽ tin cậy (trust) CSDL và nội dung bên trong nó, điều này làm tăng rủi ro bảo mật. Theo mặc định, TRUSTWORTHY được thiết lập là OFF)

msdb

CSDL msdb được SQL Server Agent sử dụng để lên lịch cho các công việc và các cảnh báo. Ngoài ra, nó còn lưu trữ lịch sử của các SQL Agent jobs.

msdb hỗ trợ như sau:

  • Jobs và các cảnh báo
  • Database Mail
  • Service Broker
  • Lịch sử sao lưu và khôi phục các CSDL

model

SQL Server sử dụng CSDL model để làm mẫu (template) cho việc tạo các CSDL khác.

Khi thực hiện tạo một CSDL mới, SQL Server sẽ sao chép nội dung của CSDL model gồm các thành phần tùy chọn sang CSDL mới.

Nếu thực hiện sửa đổi CSDL model thì tất cả các CSDL mà chúng ta tạo ra sau đó sẽ nhận các sửa đổi này.

Bất cứ khi nào SQL Server khởi động, nó sẽ tạo tempdb từ model. Do đó, CSDL model phải luôn tồn tại trên SQL Server.

tempdb

CSDL tempdb lưu trữ các dữ liệu tạm thời do người dùng tạo ra, những kết quả trung gian phục vụ cho quá trình xử lý của nội bộ SQL Server: xử lý các câu truy vấn (Query), sắp xếp (Sorting),…

Mặc định mỗi khi SQL Server được khởi động thì CSDL tempdb được tái tạo lại, mới hoàn toàn, mọi dữ liệu (bảng tạm) do người dùng lưu trữ lên CSDL tempdb trước đó sẽ biến mất. Do đó, không thể thực hiện sao lưu hay phục hồi CSDL tempdb./.

Trên đây là những thông tin cơ bản về 4 Systems Databases của SQL Server! Hy vọng rằng, các bạn đã học được nhiều điều từ bài viết này! Chúc các bạn học tốt!

Bộ môn Ứng dụng phần mềm
Cao đẳng FPT Mạng cá cược bóng đá Hà Nội

Cùng chuyên mục

Đăng Kí học Fpoly 2023

Bình Luận