Trong hai tháng qua, tôi đã tìm kiếm các giải pháp hoặc thực tiễn để xử lý việc quản lý phát hành trong cơ sở dữ liệu. Tôi đang tìm kiếm những gì mọi người xem là quá trình tốt nhất để xử lý việc này.
Chúng tôi có 3 môi trường cho cơ sở dữ liệu của chúng tôi:
- Phát triển
- Kiểm tra chấp nhận người dùng (UAT)
- Sản xuất
Vấn đề là đôi khi chúng tôi đang thực hiện các thay đổi đối với một số thứ trong cơ sở dữ liệu phát triển của mình và đến lúc triển khai, một số tính năng có thể chưa sẵn sàng để được phát hành lên UAT.
Gần đây, chúng tôi đã bắt đầu sử dụng kiểm soát Nguồn SQL của Red Gate để lưu trữ tất cả các thực thể của chúng tôi (với các cam kết thông thường).
Tôi đã nghĩ đến việc loại bỏ các thay đổi (nghĩa là mọi thứ từ thay đổi X trở lại đang bị đẩy sang UAT), tuy nhiên, điều này có nghĩa là mọi người chỉ kiểm tra mã của họ vào kiểm soát nguồn ngay trước khi chúng tôi triển khai có thể gây nhầm lẫn ( đặc biệt là vì mọi người hay quên). Một vấn đề khác liên quan đến cách tiếp cận thay đổi là nếu có một lỗi trong quy trình được lưu trữ cần phải sửa, số lượng thay đổi cuối cùng sẽ nằm ngoài phạm vi của bộ thay đổi tối đa của chúng tôi để sửa đổi, do đó chúng tôi cần phải sửa tạo lại cơ sở dữ liệu từ một bộ thay đổi tối đa, chúng tôi sẽ đẩy lỗi ra một lần nữa.
Bất kỳ đề xuất về một quá trình?
Cảm ơn