Tích hợp liên tục - Cơ sở dữ liệu
Tích hợp Cơ sở dữ liệu Liên tục là quá trình xây dựng lại cơ sở dữ liệu của bạn và kiểm tra dữ liệu bất kỳ khi nào một thay đổi được áp dụng cho kho lưu trữ kiểm soát phiên bản của dự án.
Trong Tích hợp cơ sở dữ liệu, nói chung tất cả các tạo tác liên quan đến tích hợp cơ sở dữ liệu -
- Nên nằm trong một hệ thống kiểm soát phiên bản.
- Có thể được kiểm tra tính nghiêm ngặt và kiểm tra sự tuân thủ chính sách.
- Có thể được tạo bằng cách sử dụng các tập lệnh xây dựng của bạn.
Các hoạt động có thể tham gia vào Tích hợp Cơ sở dữ liệu Liên tục có thể là bất kỳ hoạt động nào sau đây:
Drop a Database - Bỏ cơ sở dữ liệu và loại bỏ dữ liệu liên quan để bạn có thể tạo cơ sở dữ liệu mới có cùng tên
Create a new Database - Tạo cơ sở dữ liệu mới bằng Ngôn ngữ Định nghĩa Dữ liệu (DDL).
Insert the Initial Data - Chèn bất kỳ dữ liệu ban đầu nào (ví dụ: bảng tra cứu) mà hệ thống của bạn dự kiến sẽ chứa khi được phân phối.
Migrate Database and Data - Di chuyển lược đồ cơ sở dữ liệu và dữ liệu định kỳ (nếu bạn đang tạo hệ thống dựa trên cơ sở dữ liệu hiện có).
Modify Column Attributes - Sửa đổi các thuộc tính và ràng buộc của cột bảng dựa trên yêu cầu và cấu trúc lại.
Modify Test Data - Thay đổi dữ liệu thử nghiệm nếu cần cho nhiều môi trường.
Vì vậy, trong ví dụ về Cơ sở dữ liệu liên tục, chúng ta sẽ thực hiện các bước sau:
Chúng tôi sẽ tạo một cơ sở dữ liệu MS SQL Server và một bảng tương ứng.
Chúng tôi sẽ tạo một tập lệnh từ SQL Server Management Studio. Tập lệnh cơ sở dữ liệu này sẽ được sử dụng để thiết lập bảng của chúng ta trong cơ sở dữ liệu.
Chúng tôi sẽ viết mã trong dự án ASP.Net của chúng tôi để truy cập cơ sở dữ liệu này.
Chúng tôi sẽ tạo một bước trong dự án của chúng tôi trong TeamCity để chạy tập lệnh này.
Chúng tôi sẽ kiểm tra tập lệnh của chúng tôi vào Git.
Các bước để thực hiện việc này trong cơ sở dữ liệu AWS đã được tạo trong phần trước.
Step 1- Tạo cơ sở dữ liệu MS SQL Server và một bảng tương ứng. Hãy mở SQL Server Management Studio và tạo một cơ sở dữ liệu và bảng đơn giản. Nhấp chuột phải vào cơ sở dữ liệu và nhấp vàoNew Database.
Step 2 - Đặt tên là Demodb và bấm OK
Step 3 - Trong cơ sở dữ liệu mới, nhấp chuột phải và tạo một bảng mới.
Step 4 - Bạn có thể thêm các cột mong muốn của mình vào bảng.
Step 5 - Lưu bảng và đặt tên là Demotb.
Step 6 - Bây giờ nhấp chuột phải vào bảng và chọn tùy chọn menu Script Table as → Drop and Create to → File.
Step 7 - Lưu tệp vào thư mục dự án demo dưới dạng Sample.sql.
Đây là những gì kịch bản cơ sở dữ liệu sẽ như thế nào. Đầu tiên nó sẽ thả một bảng hiện có nếu có và sau đó tạo lại bảng.
USE [Demodb]
GO
/****** Object: Table [dbo].[Demotb] Script Date: 3/22/2016 7:03:25 AM
******
DROP TABLE [dbo].[Demotb]
GO
/****** Object: Table [dbo].[Demotb] Script Date: 3/22/2016 7:03:25 AM
******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Demotb](
[TutorialName] [nvarchar](max) NULL,
[TutorialID] [smallint] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
Step 8 - Bây giờ chúng ta hãy nhanh chóng thay đổi ASP.Net code để tham chiếu đến cơ sở dữ liệu mới.
Step 9 - Trong Tutorial.cs nộp hồ sơ của bạn Demo project, thêm các dòng mã sau. Các dòng mã này sẽ kết nối với cơ sở dữ liệu của bạn, lấy phiên bản Máy chủ và lưu trữ tên phiên bản trong biến Tên. Chúng tôi có thể hiển thị biến Tên này trongDemo.aspx.cs nộp qua một Response.write chỉ huy.
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
namespace Simple {
public class Tutorial {
public String Name;
public Tutorial() {
string connectionString = "Data Source = WIN-50GP30FGO75;
Initial Catalog = Demodb;
Integrated Security = true;";
using (SqlConnection connection = new SqlConnection()) {
connection.ConnectionString = connectionString;
connection.Open();
Name = connection.ServerVersion;
connection.Close();
}
}
}
}
Step 10 - Thêm mã sau vào Demo.aspx.cs để đảm bảo rằng nó hiển thị phiên bản SQL Server.
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Simple {
public partial class Demo : System.Web.UI.Page {
Tutorial tp = new Tutorial();
protected void Page_Load(object sender, EventArgs e){
Response.Write(tp.Name);
}
}
}
Bây giờ nếu chúng tôi chạy mã, bạn sẽ nhận được kết quả sau trong trình duyệt.
Step 11- Bây giờ chúng ta hãy thêm bước của chúng ta trong TeamCity sẽ gọi script cơ sở dữ liệu. Đi tới bảng điều khiển dự án của bạn và nhấp vàoEdit Configuration Settings.
Step 12 - Đi tới Các bước xây dựng và nhấp vào Add build step.
Chọn các tùy chọn sau (Lưu ý rằng máy khách MS SQL Server phải được cài đặt trên Máy chủ CI).
Loại người chạy phải là Dòng lệnh.
Đặt tên bước tùy chọn.
Run phải là Executable với các tham số.
Lệnh thực thi phải được C:\Program Files\Microsoft SQL Server\110\Tools\Binn\sqlcmd.exe
Tham số lệnh phải là -S WIN-50GP30FGO75 -i Sample.sql. Trong đó –S cung cấp tên của phiên bản SQL Server.
Step 13 - Nhấp vào Lưu.
Bây giờ những gì cần được đảm bảo là thứ tự xây dựng. Bạn phải đảm bảo thứ tự xây dựng như sau.
Step 14 - Bạn có thể thay đổi thứ tự xây dựng bằng cách chọn tùy chọn để sắp xếp lại các bước xây dựng.
Đầu tiên nên thiết lập cơ sở dữ liệu - Vì vậy, điều này sẽ được sử dụng để tạo lại cơ sở dữ liệu của bạn từ mới.
Tiếp theo là xây dựng ứng dụng của bạn.
Cuối cùng là thiết lập thử nghiệm của bạn.
Step 15 - Bây giờ chạy git add và git commit lệnh để Sample.sqltệp được kiểm tra vào Git. Điều này sẽ kích hoạt một bản dựng tự động. Và quá trình xây dựng này sẽ vượt qua.
Bây giờ bạn có một chu trình xây dựng chính thức với khía cạnh tích hợp cơ sở dữ liệu liên tục cũng trong chu kỳ của bạn. Trong phần tiếp theo, chúng ta hãy xem xét vấn đề này xa hơn và xem xét Triển khai liên tục.
Bây giờ bạn đã thực hiện việc này với Máy chủ SQL cục bộ, chúng tôi có thể lặp lại các bước tương tự cho AWS MS SQLMáy chủ đã được tạo ở một trong các phần trước đó. Để kết nối với Microsoft SQL Server, bạn cần kết nối theo quy ước sau.
Step 16- Đầu tiên hãy xem tên được gán cho cá thể cơ sở dữ liệu của bạn trong AWS là gì. Khi bạn đăng nhập vào AWS, hãy chuyển đến phần RDS trong phần cơ sở dữ liệu.
Step 17 - Nhấp vào Phiên bản DB trong màn hình tiếp theo xuất hiện.
step 18- Nhấp vào cơ sở dữ liệu của bạn và ghi chú về điểm cuối. Trong ảnh chụp màn hình sau, nó làdemodb.cypphcv1d87e.ap-southeast-1.rds.amazonaws.com:1433
Step 19 - Bây giờ để kết nối với cơ sở dữ liệu từ SQL Server Management Studio, bạn cần chỉ định kết nối là demodb.cypphcv1d87e.ap-southeast-1.rds.amazonaws.com,1433 (Lưu ý dấu phẩy được sử dụng giữa tên phiên bản và số cổng).
Ảnh chụp màn hình sau cho thấy kết nối thành công với cơ sở dữ liệu.
Sau đó, bạn có thể lặp lại tất cả các bước tương tự. CácSqlcmd command sẽ như sau -
Lệnh này có thể được thay thế trong bước xây dựng cơ sở dữ liệu trong TeamCity. Khi bạn thực hiệnsqlcmd command, bảng sẽ được tạo tự động trong cơ sở dữ liệu SQL Server của bạn trong AWS.