2012-06-23 24 views
10

Tôi đang tìm phương tiện để sử dụng triển khai Git trên Windows Azure cùng với giải pháp cơ sở dữ liệu MySQL hoặc cơ sở dữ liệu khác của họ.Di chuyển giản đồ cơ sở dữ liệu trên Azure với triển khai Git

Tôi cần một phương tiện di chuyển các thay đổi lược đồ cơ sở dữ liệu như là một phần của việc triển khai - Azure có cung cấp hỗ trợ cho điều này mà không sử dụng Visual Studio hoặc .NET.

Trả lời

0

Tôi không chắc bạn có bao nhiêu trải nghiệm với Windows Azure, tuy nhiên khi bạn tạo trang web Windows Azure, bạn có khả năng sử dụng cơ sở dữ liệu SQL Azure hoặc cơ sở dữ liệu đám mây MySQL tích hợp trực tiếp với Windows Azure Websites của bạn.

Vì vậy, nếu bạn sẽ sử dụng SQL Azure Database sau đó có một số cách bạn có thể di chuyển DB của bạn theo liên kết ở đây:

Migrating Databases to Windows Azure SQL Database (formerly SQL Azure)

Để quản lý MySQL bạn có thể sử dụng Local Web Server để làm điều đó. Cách tôi đã làm là sử dụng PHP, MySQL Command-Line Tool (một phần của MySQL), và một máy chủ web được thiết lập trên máy cục bộ của tôi, và rằng tôi đã kích hoạt phần mở rộng PDO cho MySQL. Bằng cách này, tôi có thể quản lý MySQL của mình trực tiếp từ máy cục bộ của riêng tôi và các chi tiết được giải thích ở cuối bài viết này:

Create a PHP-MySQL Windows Azure web site and deploy using Git.

Cũng là phần SQL bạn có thể viết trong Bàn làm việc nếu bạn sử dụng MySQL và Oracle SQL Developer nếu bạn sử dụng Oracle SQL.

Cuối cùng triển khai Git cho phép bạn triển khai bất kỳ loại ứng dụng nào trực tiếp cho Windows Azure mà không sử dụng VSX.

+1

Cảm ơn, tôi tin rằng tôi hiện đang làm những gì bạn đề cập đến trên Azure. Những gì tôi bây giờ muốn làm là có thể "phiên bản" lược đồ cơ sở dữ liệu MySQL của tôi cùng với Git triển khai.Ví dụ: tôi triển khai phiên bản mới của trang web bao gồm bảng mới và PHP để quản lý điều này - làm cách nào để Azure tự động cập nhật lược đồ cơ sở dữ liệu của tôi cho triển khai mới và lý tưởng đảo ngược các thay đổi nếu tôi khôi phục triển khai ? – James

+0

Bạn có thể cần phải làm điều đó trực tiếp trong mã của bạn như thông qua PHPAdmin, git có thể không phải là một công cụ để quản lý các phiên bản MySQL của bạn trực tiếp. Bạn chắc chắn có thể viết kịch bản trong mã của bạn để cập nhật lược đồ DB sau mỗi lần cập nhật Git không thể làm điều đó cho bạn. – AvkashChauhan

4

Về cơ bản, bạn muốn sử dụng Azure làm nền tảng Tích hợp liên tục (CI) và quan điểm của tôi là Azure của chính nó chưa có.

Kịch bản CI dựa trên git cơ bản sẽ bao gồm các bước sau.

  1. Mã src và bất kỳ lược đồ cơ sở dữ liệu/cập nhật dữ liệu nào được đẩy vào kho lưu trữ git trung tâm như GitHub. [Tính năng có sẵn]
  2. GitHub sau đó sẽ đẩy cập nhật lên Azure. [Không được hỗ trợ trong Azure cho đến khi chúng hỗ trợ các móc GitHub]
  3. Azure biên dịch và triển khai mã. [Hỗ trợ]
  4. Azure cập nhật cơ sở dữ liệu từ tệp sql được lấy từ repo (hãy nhớ, điều này cần được tự động hóa). [Không được hỗ trợ]
  5. Azure báo cáo bất kỳ lỗi nào khi chạy cơ sở dữ liệu hoặc ứng dụng web. [Hỗ trợ]
  6. Azure chạy thử nghiệm tích hợp do người dùng cung cấp để kiểm tra chức năng cụ thể hơn và báo cáo trạng thái của những thử nghiệm đó cho người dùng [Không được hỗ trợ].
  7. Azure cho phép bạn quay lại ảnh triển khai trước đó [Được hỗ trợ một phần. Ảnh chụp nhanh không dựa trên cam kết git chẳng hạn].

Tôi có thể sai về một số điểm hoặc tính năng mới có thể được thêm vào kể từ khi tôi viết bài này. Sửa chữa rất hoan nghênh và tôi sẽ cố gắng cập nhật danh sách cho phù hợp.

+4

# 2 và # 7 bây giờ sẽ được hỗ trợ. Tôi không chắc chắn nếu # 4 (di chuyển một lược đồ thông qua triển khai git) được hỗ trợ –

+3

# 4 cũng được hỗ trợ ngay bây giờ. Tôi đã tạo ra một bằng chứng về khái niệm sử dụng cơ sở dữ liệuInitilizer như được giải thích trong bài đăng trên blog [Chuyển mã đầu tiên của Mã EF thành Dịch vụ đám mây Azure] (http://blogs.msdn.com/b/webdev/archive/2014/04/09/ ef-code-first-migrations-deploy-to-an-azure-cloud-service.aspx) – Towa

Các vấn đề liên quan