Hiệu suất lợi ích của việc lấy cơ sở dữ liệu không sử dụng ngoại tuyến


8

Tôi có một số cơ sở dữ liệu cho các ứng dụng cũ chạy trong các máy ảo hiện đang tắt cho đến khi ai đó cần xem xét một số lịch sử. Tôi đã đặt từng cơ sở dữ liệu được các ứng dụng này sử dụng thành ngoại tuyến nhưng tôi muốn biết:

Có một lợi ích hiệu suất nào khi để các cơ sở dữ liệu không sử dụng này ở trạng thái ngoại tuyến thay vì ngồi trực tuyến nhưng không được sử dụng mà không có bất kỳ kết nối nào với chúng hoặc các truy vấn chạy với chúng?

Câu trả lời:


11

Nếu cơ sở dữ liệu có các đối tượng trong bộ nhớ, việc đưa nó ngoại tuyến sẽ xóa các đối tượng đó khỏi bộ đệm. Điều này giải phóng bộ nhớ cho các đối tượng cơ sở dữ liệu khác.

Ngoài ra, mang nó ngoại tuyến đảm bảo rằng các kế hoạch bảo trì tự động (sao lưu, bảo trì chỉ mục, kiểm tra tính toàn vẹn ...) không lãng phí bất kỳ tài nguyên nào thực hiện bảo trì trên đó.


6

Thay vào đó, bạn có thể bật AUTO_CLOSEcác cơ sở dữ liệu này:

Khi được đặt thành BẬT, cơ sở dữ liệu sẽ được tắt sạch và tài nguyên của nó được giải phóng sau khi người dùng cuối cùng thoát. Cơ sở dữ liệu tự động mở lại khi người dùng cố gắng sử dụng lại cơ sở dữ liệu. Khi được đặt thành TẮT, cơ sở dữ liệu vẫn mở sau khi người dùng cuối cùng thoát.

Mặc dù thường tránh xa, cài đặt này hợp lệ cho các cơ sở dữ liệu thực sự hiếm khi được sử dụng. chỉ cần truy cập cơ sở dữ liệu sẽ mở nó, không cần can thiệp thủ công.


1

Nếu không có kết nối với cơ sở dữ liệu, tôi không nghĩ họ đang sử dụng tài nguyên máy chủ SQL. Bạn có thể sao lưu toàn bộ các DB này và xóa chúng khỏi máy chủ hoặc đưa chúng ngoại tuyến và nếu cần,

Bạn có thể đưa chúng trở lại trực tuyến ngay lập tức, tuy nhiên, điều này sẽ gây ra lỗi cho các công việc quản trị đang chạy trên tất cả các DB như sao lưu tất cả các DB người dùng, reindex tất cả các cơ sở dữ liệu người dùng

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.