Sürekli Entegrasyon - Veritabanı
Sürekli Veritabanı Entegrasyonu, bir projenin sürüm kontrol havuzuna herhangi bir değişiklik uygulandığında veritabanınızı yeniden oluşturma ve verileri test etme işlemidir.
Veritabanı Entegrasyonunda, genellikle veritabanı entegrasyonuyla ilgili tüm yapılar -
- Bir sürüm kontrol sisteminde bulunmalıdır.
- Sertlik açısından test edilebilir ve politikaya uygunluk açısından incelenebilir.
- Derleme komut dosyalarınız kullanılarak oluşturulabilir.
Sürekli Veritabanı Entegrasyonuna dahil edilebilecek faaliyetler aşağıdakilerden herhangi biri olabilir -
Drop a Database - Veritabanını bırakın ve ilişkili verileri kaldırın, böylece aynı ada sahip yeni bir veritabanı oluşturabilirsiniz
Create a new Database - Veri Tanımlama Dili'ni (DDL) kullanarak yeni bir veritabanı oluşturun.
Insert the Initial Data - Sisteminizin teslim edildiğinde içermesi beklenen ilk verileri (ör. Arama tabloları) ekleyin.
Migrate Database and Data - Veritabanı şemasını ve verileri periyodik olarak taşıyın (mevcut bir veritabanına dayalı bir sistem oluşturuyorsanız).
Modify Column Attributes - Tablo sütun niteliklerini ve kısıtlamalarını gereksinimlere ve yeniden düzenlemeye göre değiştirin.
Modify Test Data - Test verilerini birden çok ortam için gerektiği gibi değiştirin.
Dolayısıyla, Sürekli Veritabanı örneğimizde, aşağıdaki adımları uygulayacağız -
Bir MS SQL Server veritabanı ve ilgili bir tablo oluşturacağız.
SQL Server Management Studio'dan bir script oluşturacağız. Bu veritabanı komut dosyası, veritabanımızda tablomuzu kurmak için kullanılacaktır.
Bu veritabanına erişmek için ASP.Net projemizde bir kod yazacağız.
Bu betiği çalıştırmak için TeamCity'de projemizde bir adım oluşturacağız.
Komut dosyamızı Git'e kontrol edeceğiz.
Daha önceki bir bölümde oluşturulan AWS veritabanında bunu yapma adımları.
Step 1- Bir MS SQL Server veritabanı ve ilgili bir tablo oluşturun. SQL Server Management Studio'yu açalım ve basit bir veritabanı ve tablo oluşturalım. Veritabanlarına sağ tıklayın ve tıklayınNew Database.
Step 2 - olarak adlandır Demodb ve Tamam'ı tıklayın
Step 3 - Yeni veritabanında, sağ tıklayın ve yeni bir tablo oluşturun.
Step 4 - Tabloya istediğiniz sütunları ekleyebilirsiniz.
Step 5 - Tabloyu kaydedin ve olarak adlandırın Demotb.
Step 6 - Şimdi masaya sağ tıklayın ve menü seçeneğini seçin Script Table as → Drop and Create to → File.
Step 7 - Dosyayı demo proje klasörüne kaydedin. Sample.sql.
Veritabanı komut dosyası böyle görünecektir. Varsa önce mevcut bir tabloyu bırakır ve ardından tabloyu yeniden oluşturur.
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 - Şimdi hızlıca değiştirelim ASP.Net code yeni veritabanına başvurmak için.
Step 9 - içinde Tutorial.cs dosyanda Demo project, aşağıdaki kod satırlarını ekleyin. Bu kod satırları veritabanınıza bağlanacak, Sunucu sürümünü alacak ve sürüm adını Ad değişkeninde saklayacaktır. Bu isim değişkeniniDemo.aspx.cs aracılığıyla dosya Response.write komut.
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 - Aşağıdaki kodu Demo.aspx.cs SQL Server sürümünü görüntülediğinden emin olmak için.
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);
}
}
}
Şimdi kodu çalıştırırsak, tarayıcıda aşağıdaki çıktıyı alacaksınız.
Step 11- Şimdi veritabanı betiğini çağıracak olan TeamCity adımımızı ekleyelim. Proje panonuza gidin ve tıklayınEdit Configuration Settings.
Step 12 - Adımları Oluştur'a gidin ve tıklayın Add build step.
Aşağıdaki seçenekleri seçin (MS SQL Server istemcisinin CI Sunucusuna yüklenmesi gerektiğini unutmayın).
Koşucu türü Komut Satırı olmalıdır.
İsteğe bağlı bir Adım Adı verin.
Çalıştırma parametreleri ile yürütülebilir olmalıdır.
Komut çalıştırılabilir olmalıdır C:\Program Files\Microsoft SQL Server\110\Tools\Binn\sqlcmd.exe
Komut parametreleri olmalıdır -S WIN-50GP30FGO75 -i Sample.sql. Burada –S, SQL Server örneğinin adını verir.
Step 13 - Kaydet'i tıklayın.
Şimdi sağlanması gereken şey inşa düzenidir. Yapım sırasının aşağıdaki gibi olduğundan emin olmalısınız.
Step 14 - Derleme adımlarını yeniden sıralama seçeneğini belirleyerek yapı sırasını değiştirebilirsiniz.
Veritabanı kurulumu ilk olmalıdır - Bu nedenle bu, veritabanınızı yenisinden yeniden oluşturmak için kullanılacaktır.
Sırada uygulamanızın yapısı var.
Sonunda test kurulumunuz.
Step 15 - Şimdi çalıştırın git add ve git commit komut böylece Sample.sqldosya Git'e kontrol edilir. Bu, bir yapıyı otomatik olarak tetikleyecektir. Ve bu yapı geçmeli.
Artık döngünüzde olduğu gibi sürekli bir veritabanı entegrasyonu yönüyle tam teşekküllü bir derleme döngüsüne sahipsiniz. Bir sonraki bölümde, bunu daha ileri götürelim ve Sürekli Dağıtıma bakalım.
Artık bunu yerel bir SQL Sunucusuyla yaptığınıza göre, aynı adımları bir AWS MS SQLÖnceki bölümlerden birinde oluşturulan sunucu. Bir Microsoft SQL Sunucusuna bağlanmak için, aşağıdaki kural ile bağlanmanız gerekir.
Step 16- Öncelikle AWS'de veritabanı örneğinize atanan adın ne olduğunu görün. AWS'de oturum açtığınızda, veritabanı bölümünün altındaki RDS bölümüne gidin.
Step 17 - Açılan sonraki ekranda Veritabanı Eşgörünümlerine tıklayın.
step 18- Veritabanınıza tıklayın ve uç noktayı not edin. Aşağıdaki ekran görüntüsünde,demodb.cypphcv1d87e.ap-southeast-1.rds.amazonaws.com:1433
Step 19 - Şimdi veritabanına bağlanmak için SQL Server Management Studio, bağlantıyı şu şekilde belirtmeniz gerekir: demodb.cypphcv1d87e.ap-southeast-1.rds.amazonaws.com,1433 (Örnek adı ve bağlantı noktası numarası arasında kullanılan virgüllere dikkat edin).
Aşağıdaki ekran görüntüsü, veritabanına başarılı bir bağlantıyı göstermektedir.
Sonra aynı adımları tekrarlayabilirsiniz. Sqlcmd command aşağıdaki gibi olacak -
Aynı komut, TeamCity'deki Veritabanı oluşturma adımında değiştirilebilir. Çalıştırdığınızdasqlcmd commandtablo, AWS'deki SQL Server veritabanınızda otomatik olarak oluşturulacaktır.