Nó thực sự phụ thuộc vào mức độ lớn, phức tạp và hoạt động của cơ sở dữ liệu của bạn. Hãy nhớ rằng trong khi bạn thực hiện thay đổi lược đồ, nhiều bảng sẽ ở chế độ chỉ đọc hoặc hoàn toàn không thể truy cập cho đến khi các thay đổi được hoàn thành. Cũng lưu ý rằng điều ngược lại là đúng - các thay đổi lược đồ của bạn sẽ cần có được các khóa độc quyền trên toàn bộ các bảng và có thể tất cả các mối quan hệ của chúng, có thể mất nhiều thời gian hoặc thậm chí không thể có được nếu ứng dụng cản trở. Về mặt lý thuyết điều này có thể dẫn đến các khóa tròn sẽ đóng băng toàn bộ DB. Về cơ bản, nếu có rất nhiều việc đọc và viết đang diễn ra và những thay đổi sẽ gây ra sự gián đoạn đáng kể cho ứng dụng của bạn, thì bạn nên sắp xếp thời gian chết cho nó.
Sau đó, bạn phải tính đến những thay đổi mà ứng dụng của bạn sẽ yêu cầu. Thay đổi lược đồ cũng yêu cầu thay đổi trong ứng dụng? Là ứng dụng của bạn đủ nhỏ hoặc đủ mô-đun để bạn có thể thực hiện những thay đổi đó theo gia số khi bạn thay đổi cơ sở dữ liệu? Cuối cùng, thực hiện các thay đổi trong sản xuất là thực sự khó khăn. Trừ khi ứng dụng của bạn được thiết kế cho nó từ đầu, gần như không có giá trị nỗ lực bổ sung cần thiết cho một số thời gian chết nhỏ.
Tùy chọn khác để giảm thiểu thời gian chết là xây dựng cơ sở dữ liệu mới với lược đồ cải tiến và máy chủ ứng dụng mới được kết nối với nó, sau đó xây dựng tiện ích để đồng bộ dữ liệu giữa cơ sở dữ liệu mới và cơ sở dữ liệu cũ. Khi bạn đã sẵn sàng để triển khai, bạn chỉ cần lưu lượng truy cập đến máy chủ ứng dụng mới. Một lần nữa, đây là sự đánh đổi giữa việc tạo ra hệ thống khó như thế nào và khó chấp nhận một số thời gian chết. Có rất ít ứng dụng không thể chịu đựng được một hoặc hai giờ với thông báo "Bảo trì theo lịch trình" bắt đầu từ 2 giờ sáng vào tối thứ ba.