Trước hết tôi phải nói rằng câu hỏi này xuất phát từ quan điểm của kỹ sư phần mềm. Thật không may, chúng tôi không có DBA nên chúng tôi cần quản trị cơ sở dữ liệu của riêng mình.
Chúng tôi đã cài đặt SQL Server 2012 Enterprise để chạy cơ sở dữ liệu sẵn sàng 24/7. Cơ sở dữ liệu khoảng 150 GB và một số bảng chứa hàng tỷ hàng. Nhiều dịch vụ đang truy cập cơ sở dữ liệu hàng nghìn lần mỗi phút để chèn dữ liệu đo thời gian thực. Vì vậy, khi cơ sở dữ liệu ngừng hoạt động trong nửa giờ, sẽ mất dữ liệu đo trong nửa giờ, điều mà chúng tôi không thể đủ khả năng ...
Trong tình huống này, chúng tôi có hai vấn đề chính:
- Khi nào và làm thế nào để chúng tôi cài đặt Microsoft Updates?
- Làm thế nào để chúng ta áp dụng thay đổi lược đồ?
Windows Updates không yêu cầu giải thích thêm. Khi các yêu cầu mới đến hoặc các yêu cầu hiện tại thay đổi, đôi khi chúng ta cần thực hiện một số thay đổi lược đồ. Ví dụ: thêm một số cột bổ sung, thay đổi loại dữ liệu, thay đổi kích thước các trường varchar, v.v ... Một số thay đổi này mất rất nhiều thời gian để chạy hoặc thậm chí là hết thời gian, vì cơ sở dữ liệu luôn bị tải nặng.
Chúng tôi đang suy nghĩ để cài đặt một phiên bản bổ sung và kích hoạt Luôn luôn, để thực hiện các thao tác sau:
- Đối với Cập nhật Windows, đưa một máy chủ xuống, cài đặt các bản cập nhật Windows, sao lưu và sau đó cập nhật phiên bản thứ hai.
- Đối với các thay đổi lược đồ, đưa một máy chủ xuống, áp dụng các thay đổi lược đồ, đưa nó trở lại và sau đó áp dụng các thay đổi tương tự cho thể hiện thứ hai.
Hai điều này có thể được thực hiện với SQL Server Luôn luôn không, và đây có phải là một cách tiếp cận phổ biến không? Dữ liệu thậm chí có được đồng bộ hóa phía sau không? Hay tôi hoàn toàn suy nghĩ sai hướng và có giải pháp nào tốt hơn?