öğretici: SQL Server DMS kullanarak Azure SQL Veritabanı geçirme
Azure veritabanı geçiş hizmeti 'ni kullanarak veritabanlarını bir SQL Server örneğinden Azure SQL Veritabanıgeçirebilirsiniz. bu öğreticide, Azure veritabanı geçiş hizmeti 'ni kullanarak Azure SQL Veritabanı bir SQL Server 2016 (veya üzeri) şirket içi örneğine geri yüklenen AdventureWorks2016 veritabanını tek bir veritabanına veya havuza alınmış veritabanına geçireceğiniz.
Şunları öğrenirsiniz:
- veri Geçiş Yardımcısı kullanarak, herhangi bir engelleme sorunu için şirket içi veritabanınızı değerlendirin ve değerlendirin.
- veritabanı örnek şemasını geçirmek için veri Geçiş Yardımcısı kullanın.
- Azure DataMigration kaynak sağlayıcısını kaydedin.
- Azure Veritabanı Geçiş Hizmeti örneği oluşturun.
- Azure veritabanı geçiş hizmeti 'ni kullanarak bir geçiş projesi oluşturun.
- Geçişi çalıştırma.
- Geçişi izleme.
Önkoşullar
Bu öğreticiyi tamamlamak için aşağıdakileri yapmanız gerekir:
SQL Server 2016 veya sonraki bir sürümüindirin ve yükleyin.
Sunucu Ağ Protokolünü Etkinleştirme veya Devre Dışı Bırakma makalesindeki yönergeleri izleyerek SQL Server Express yüklemesi sırasında varsayılan olarak devre dışı bırakılan TCP/IP protokolünü etkinleştirin.
AdventureWorks2016 veritabanını SQL Server örneğine geri yükleyin.
Azure SQL Veritabanı, Azure portal kullanarak Azure SQL Veritabanı veritabanı oluşturmamakalesindeki ayrıntıları izleyerek yaptığınız bir veritabanı oluşturun. Bu öğreticide Azure SQL Veritabanı’nın adının AdventureWorksAzure olduğu kabul edilmiştir, ancak istediğiniz adı kullanabilirsiniz.
Not
SQL Server ıntegration Services (ssıs) kullanıyorsanız ve ssıs projeleriniz/paketleriniz (ssısdb) için katalog veritabanını SQL Server ile Azure SQL Veritabanı geçirmek istiyorsanız, ssıs 'yi Azure Data Factory (ADF) sağladığınızda, hedef sssısdb sizin adınıza otomatik olarak oluşturulur ve yönetilir. ssıs paketlerini geçirme hakkında daha fazla bilgi için SQL Server ıntegration Services paketlerini Azure 'a geçirmemakalesine bakın.
veri Geçiş Yardımcısıen son sürümünü indirip yükleyin.
expressroute veya VPNkullanarak şirket içi kaynak sunucularınıza siteden siteye bağlantı sağlayan Azure Resource Manager dağıtım modelini kullanarak Azure veritabanı geçiş hizmeti için Microsoft Azure sanal ağı oluşturun. Sanal ağ oluşturma hakkında daha fazla bilgi için sanal ağ belgelerineve özellikle adım adım ayrıntılarla birlikte hızlı başlangıç makalelerine bakın.
Not
Sanal ağ kurulumu sırasında, Microsoft 'a ağ eşlemesi ile ExpressRoute kullanırsanız, hizmetin sağlanacağı alt ağa aşağıdaki hizmet uç noktalarını ekleyin:
- hedef veritabanı uç noktası (örneğin, SQL uç noktası, Cosmos DB uç noktası vb.)
- Depolama uç noktası
- Service Bus uç noktası
Azure veritabanı geçiş hizmeti internet bağlantısı olmadığından bu yapılandırma gereklidir.
Şirket içi ağ ile Azure arasında siteden siteye bağlantınız yoksa veya siteden siteye bağlantı bant genişliği varsa, Azure veritabanı geçiş hizmeti 'ni karma modda (Önizleme) kullanmayı göz önünde bulundurun. Karma mod, bulutta çalışan bir Azure veritabanı geçiş hizmeti örneğiyle birlikte Şirket içi geçiş çalışanından yararlanır. Karma modda Azure veritabanı geçiş hizmeti 'nin bir örneğini oluşturmak için Azure Portal kullanarak karma modda Azure veritabanı geçiş hizmeti örneği oluşturmamakalesine bakın.
sanal ağ ağ güvenlik grubunuzun giden güvenlik kurallarınızın servicebus, Depolama ve AzureMonitor için servicetag giden bağlantı noktası 443 ' ü engellemediğinden emin olun. Azure sanal ağ NSG trafik filtrelemesi hakkında daha fazla bilgi için ağ güvenlik grupları ile ağ trafiğini filtrelememakalesine bakın.
Windows Güvenlik Duvarınızı veritabanı altyapısı erişimi için yapılandırın.
Azure veritabanı geçiş hizmeti 'nin varsayılan olarak TCP bağlantı noktası 1433 olan kaynak SQL Server erişmesine izin vermek için Windows güvenlik duvarınızı açın. Varsayılan örneğiniz başka bir bağlantı noktasında dinliyorsa, bunu güvenlik duvarına ekleyin.
dinamik bağlantı noktaları kullanarak birden çok adlandırılmış SQL Server örneği çalıştırıyorsanız, Azure veritabanı geçiş hizmeti 'nin kaynak sunucunuzdaki adlandırılmış bir örneğe bağlanabilmesi için SQL Browser hizmetini etkinleştirmek ve güvenlik duvarlarınız aracılığıyla UDP bağlantı noktası 1434 erişimine izin vermek isteyebilirsiniz.
Kaynak veritabanınızın önünde bir güvenlik duvarı gereci kullanırken, Azure veritabanı geçiş hizmeti 'nin geçiş için kaynak veritabanına erişmesine izin vermek üzere güvenlik duvarı kuralları eklemeniz gerekebilir.
Azure veritabanı geçiş hizmeti 'nin hedef veritabanlarına erişmesine izin vermek için Azure SQL Veritabanı için sunucu düzeyinde bir ıp güvenlik duvarı kuralı oluşturun. Azure veritabanı geçiş hizmeti için kullanılan sanal ağın alt ağ aralığını belirtin.
SQL Server örneğine bağlanmak için kullanılan kimlik bilgilerinin CONTROL SERVER izinlerine sahip olduğundan emin olun.
hedef Azure SQL Veritabanı örneğine bağlanmak için kullanılan kimlik bilgilerinin hedef veritabanlarında denetim veritabanı iznine sahip olduğundan emin olun.
Önemli
Azure veritabanı geçiş hizmeti 'nin bir örneğini oluşturmak, normalde aynı kaynak grubu içinde olmayan sanal ağ ayarlarına erişim gerektirir. Sonuç olarak, DMS 'nin bir örneğini oluşturan kullanıcı abonelik düzeyinde izin gerektirir. Gerektiği şekilde atayabileceğiniz gerekli rolleri oluşturmak için aşağıdaki betiği çalıştırın:
$readerActions = ` "Microsoft.Network/networkInterfaces/ipConfigurations/read", ` "Microsoft.DataMigration/*/read", ` "Microsoft.Resources/subscriptions/resourceGroups/read" $writerActions = ` "Microsoft.DataMigration/services/*/write", ` "Microsoft.DataMigration/services/*/delete", ` "Microsoft.DataMigration/services/*/action", ` "Microsoft.Network/virtualNetworks/subnets/join/action", ` "Microsoft.Network/virtualNetworks/write", ` "Microsoft.Network/virtualNetworks/read", ` "Microsoft.Resources/deployments/validate/action", ` "Microsoft.Resources/deployments/*/read", ` "Microsoft.Resources/deployments/*/write" $writerActions += $readerActions # TODO: replace with actual subscription IDs $subScopes = ,"/subscriptions/00000000-0000-0000-0000-000000000000/","/subscriptions/11111111-1111-1111-1111-111111111111/" function New-DmsReaderRole() { $aRole = [Microsoft.Azure.Commands.Resources.Models.Authorization.PSRoleDefinition]::new() $aRole.Name = "Azure Database Migration Reader" $aRole.Description = "Lets you perform read only actions on DMS service/project/tasks." $aRole.IsCustom = $true $aRole.Actions = $readerActions $aRole.NotActions = @() $aRole.AssignableScopes = $subScopes #Create the role New-AzRoleDefinition -Role $aRole } function New-DmsContributorRole() { $aRole = [Microsoft.Azure.Commands.Resources.Models.Authorization.PSRoleDefinition]::new() $aRole.Name = "Azure Database Migration Contributor" $aRole.Description = "Lets you perform CRUD actions on DMS service/project/tasks." $aRole.IsCustom = $true $aRole.Actions = $writerActions $aRole.NotActions = @() $aRole.AssignableScopes = $subScopes #Create the role New-AzRoleDefinition -Role $aRole } function Update-DmsReaderRole() { $aRole = Get-AzRoleDefinition "Azure Database Migration Reader" $aRole.Actions = $readerActions $aRole.NotActions = @() Set-AzRoleDefinition -Role $aRole } function Update-DmsConributorRole() { $aRole = Get-AzRoleDefinition "Azure Database Migration Contributor" $aRole.Actions = $writerActions $aRole.NotActions = @() Set-AzRoleDefinition -Role $aRole } # Invoke above functions New-DmsReaderRole New-DmsContributorRole Update-DmsReaderRole Update-DmsConributorRole
Şirket içi veritabanınızı değerlendirme
Azure SQL Veritabanı bir SQL Server örneğinden tek bir veritabanına veya havuza alınmış veritabanına veri geçirebilmeniz için önce, geçişi engelleyebilen tüm engelleyici sorunlar için SQL Server veritabanını değerlendirmenize gerek duyarsınız. veri Geçiş Yardımcısı kullanarak, şirket içi veritabanı değerlendirmesini tamamlamaya yönelik SQL Server geçiş değerlendirmesi gerçekleştirme makalesinde açıklanan adımları izleyin. Yapılması gereken adımların özeti aşağıda verilmiştir:
Data Migration Yardımcısı'nda Yeni (+) simgesini ve Değerlendirme proje türünü seçin.
Bir proje adı belirtin. değerlendirme türü aşağı açılan listesinde, veritabanı altyapısı' nı seçin, kaynak sunucu türü metin kutusunda SQL Server' i seçin, hedef sunucu türü metin kutusunda, Azure SQL Veritabanı' i seçin ve ardından oluştur ' u seçerek projeyi oluşturun.
kaynak SQL Server veritabanını bir Azure SQL Veritabanı tek bir veritabanına veya havuza alınmış veritabanına geçirmeyi planlıyorsanız, aşağıdaki değerlendirme raporu türlerinden birini veya her ikisini de seçebilirsiniz:
- Veritabanı uyumluluğunu denetle
- Özellik eşliğini denetle
İki rapor türü de varsayılan olarak seçilidir.
Data Migration Yardımcısı'nın Seçenekler ekranında İleri'yi seçin.
Kaynak seçin ekranının Sunucuya bağlan iletişim kutusunda SQL Server bağlantı bilgilerini girin ve Bağlan'ı seçin.
Kaynak Ekle Iletişim kutusunda AdventureWorks2016 öğesini seçin, Ekle' yi seçin ve değerlendirmeyi Başlat' ı seçin.
Not
SSIS kullanıyorsanız, DMA Şu anda kaynak SSSıSDB değerlendirmesini desteklememektedir. ancak, ssıs projeleri/paketleri Azure SQL Veritabanı tarafından barındırılan hedef ssısdb 'ye yeniden dağıtıldıklarında değerlendirilecek/doğrulanacak. ssıs paketlerini geçirme hakkında daha fazla bilgi için SQL Server ıntegration Services paketlerini Azure 'a geçirmemakalesine bakın.
Değerlendirme tamamlandığında aşağıdaki grafiğe benzer sonuçlar görüntülenir:

Azure SQL Veritabanı veritabanları için, değerlendirmeler, tek bir veritabanına veya havuza alınmış veritabanına dağıtım için özellik eşlik sorunlarını ve geçiş engelleme sorunlarını belirler.
- SQL Server özellik eşliği kategorisi kapsamlı öneriler, Azure'daki alternatif yaklaşımlar ve geçiş projelerini planlama konusunda yardımcı olacak çıkarılabilecek adımlar sunar.
- uyumluluk sorunları kategorisi, SQL Server veritabanlarının Azure SQL Veritabanı geçişini engelleyebilen uyumluluk sorunlarını yansıtan kısmen desteklenen veya desteklenmeyen özellikleri tanımlar. Bu sorunları gidermenize yardımcı olan öneriler de sağlanır.
İlgili seçenekleri belirleyerek değerlendirme sonuçlarındaki geçiş engelleyici sorunları ve özellik eşliği sorunlarını gözden geçirin.
Örnek şemayı geçirme
değerlendirmeyi rahat hale getirdiğinizde ve seçilen veritabanının tek bir veritabanına veya Azure SQL Veritabanı havuza alınmış veritabanına geçiş için uygun bir aday olduğunu karşıladıktan sonra, şemayı Azure SQL Veritabanı ' ye geçirmek için DMA 'yı kullanın.
Not
veri Geçiş Yardımcısı bir geçiş projesi oluşturmadan önce, önkoşullardan bahsedildiği gibi Azure 'da bir veritabanı sağladığınızdan emin olun.
Önemli
ssıs kullanıyorsanız, DMA şu anda kaynak sssısdb geçişini desteklememektedir, ancak ssıs projelerinizi/paketlerinizi Azure SQL Veritabanı tarafından barındırılan hedef ssısdb 'ye yeniden dağıtabilirsiniz. ssıs paketlerini geçirme hakkında daha fazla bilgi için SQL Server ıntegration Services paketlerini Azure 'a geçirmemakalesine bakın.
AdventureWorks2016 şemasını tek bir veritabanına veya havuza alınmış veritabanı Azure SQL Veritabanı geçirmek için aşağıdaki adımları uygulayın:
Data Migration Yardımcısı'nda Yeni (+) simgesini ve ardından Proje türü bölümünde Geçiş'i seçin.
Bir proje adı belirtin, Kaynak sunucu türü metin kutusunda SQL Server, Hedef sunucu türü metin kutusunda da Azure SQL Veritabanı'nı seçin.
Geçiş Kapsamı bölümünde Yalnızca şema'yı seçin.
Yukarıdaki adımları gerçekleştirdikten sonra aşağıdaki görüntüde gösterildiği gibi Data Migration Yardımcısı arabiriminin görünmesi gerekir:

Projeyi oluşturmak için Oluştur'u seçin.
veri Geçiş Yardımcısı, SQL Server için kaynak bağlantısı ayrıntılarını belirtin, Bağlan' yı seçin ve ardından AdventureWorks2016 veritabanını seçin.

ileri' yi seçin, hedef sunucuya Bağlan' nın altında, Azure SQL Veritabanı için hedef bağlantı ayrıntılarını belirtin, Bağlan' yı seçin ve ardından Azure SQL Veritabanı önceden sağladığınız AdventureWorksAzure veritabanını seçin.

nesneleri seçme ekranına ilerlemek için ileri ' yi seçin, burada Azure SQL Veritabanı dağıtılması gereken şema nesnelerini AdventureWorks2016 veritabanında belirtebilirsiniz.
Varsayılan olarak, tüm nesneler seçilir.

SQL betiği oluştur'u seçerek SQL betiklerini oluşturun ve hata olup olmadığını inceleyin.

Şemayı dağıtma'yı seçerek şemayı Azure SQL Veritabanına dağıtın. Şema dağıtıldıktan sonra hedef sunucuda anomali olup olmadığını kontrol edin.

Microsoft.DataMigration kaynak sağlayıcısını kaydetme
Azure portalında oturum açın. Abonelikler'i arayın ve seçin.

Örnek oluşturmak istediğiniz aboneliği seçin ve Azure Veritabanı Geçiş Hizmeti sağlayıcılar'ı seçin.

Geçiş araması ve ardından Microsoft.DataMigration için kaydol'u seçin.

Azure Veritabanı Geçiş Hizmeti örneğini oluşturma
Azure portal menüsünde veya giriş sayfasında, kaynak oluştur' u seçin. Azure veritabanı geçiş hizmeti'ni arayıp seçin.

Azure Veritabanı Geçiş Hizmeti ekranında Oluştur'u seçin.

Geçiş hizmeti oluşturma temelleri ekranında:
- Aboneliği seçin.
- Yeni bir kaynak grubu oluşturun veya var olan bir grubu seçin.
- Azure veritabanı geçiş hizmeti örneği için bir ad belirtin.
- Azure veritabanı geçiş hizmeti örneğini oluşturmak istediğiniz konumu seçin.
- Hizmet modu olarak Azure ' ı seçin.
- Fiyatlandırma katmanını seçin. Maliyetler ve fiyatlandırma katmanları hakkında daha fazla bilgi için fiyatlandırma sayfasına bakın.

- Sonraki: Ağ’ı seçin.
Geçiş hizmeti oluştur ağ ekranında:
- Var olan bir sanal ağı seçin veya yeni bir ağ oluşturun. sanal ağ, kaynak SQL Server ve hedef Azure SQL Veritabanı örneğine erişimi olan Azure veritabanı geçiş hizmeti sağlar. Azure portal sanal ağ oluşturma hakkında daha fazla bilgi için Azure Portal kullanarak sanal ağ oluşturmamakalesine bakın.

- Ayrıntıları gözden geçirmek için gözden geçir + oluştur ' u seçin ve sonra hizmeti oluşturmak için Oluştur ' u seçin.
Geçiş projesi oluşturma
Hizmet oluşturulduktan sonra Azure portaldan bulun, açın ve yeni bir geçiş projesi oluşturun.
Azure portal menüsünde tüm hizmetler' i seçin. Azure veritabanı geçiş Hizmetleri'ni arayın ve seçin.

Azure veritabanı geçiş Hizmetleri ekranında, oluşturduğunuz Azure veritabanı geçiş hizmeti örneğini seçin.
Yeni geçiş Project seçin.

yeni geçiş projesi ekranında, proje için bir ad belirtin, kaynak sunucu türü metin kutusunda SQL Server' yi seçin, hedef sunucu türü metin kutusunda, Azure SQL Veritabanı' i seçin ve ardından geçiş etkinlik türünü seç ' i seçin, veri geçişi' ni seçin.

Projeyi oluşturmak ve geçiş etkinliğini çalıştırmak için Etkinlik oluştur ve çalıştır'ı seçin.
Kaynak ayrıntılarını belirtme
kaynak seç ekranında, kaynak SQL Server örneği için bağlantı ayrıntılarını belirtin.
Kaynak SQL Server örneği adı için Tam Etki Alanı Adı (FQDN) kullandığınızdan emin olun. DNS ad çözümlemenin mümkün olmadığı durumlarda IP Adresini de kullanabilirsiniz.
Kaynak sunucunuza bir güvenilir sertifika yüklemediyseniz Sunucu sertifikasına güven onay kutusunu işaretleyin.
Güvenilir sertifika yüklü değilse SQL Server, örnek başlatıldığında otomatik olarak imzalanan bir sertifika oluşturur. Bu sertifika, istemci bağlantılarında kimlik bilgilerini şifrelemek için kullanılır.
Dikkat
Kendinden imzalı bir sertifika kullanılarak şifrelenen TLS bağlantıları güçlü güvenlik sağlamaz. Ortadaki adam saldırılarına maruz kalabilirler. Bir üretim ortamında veya internet 'e bağlı sunucularda, otomatik olarak imzalanan sertifikalar kullanarak TLS 'ye güvenmemelisiniz.
Önemli
ssıs kullanırsanız, DMS şu anda kaynak sssısdb geçişini desteklememektedir, ancak ssıs projelerinizi/paketlerinizi Azure SQL Veritabanı tarafından barındırılan hedef sssısdb 'ye yeniden dağıtabilirsiniz. ssıs paketlerini geçirme hakkında daha fazla bilgi için SQL Server ıntegration Services paketlerini Azure 'a geçirmemakalesine bakın.

İleri ' yi seçin: veritabanlarını seçin.
Geçiş için veritabanları seçin
Azure SQL Veritabanı geçirmek istediğiniz tüm veritabanlarını veya belirli veritabanlarını seçin. DMS, seçili veritabanları için beklenen geçiş süresi sağlar. Geçiş daha fazla kabul edilebilir ise geçişe devam edin. geçiş daha uygun değilse, SQL yönetilen örneğe yakın kapalı kalma süresi ile geçiş yapmayı veya diğer seçenekler için DMS ekibine başvurmayı düşünün.
Kullanılabilir veritabanları listesinden geçirmek istediğiniz veritabanlarını seçin.
Beklenen kesinti süresini gözden geçirin. Kabul edilebilir ise, Ileri ' yi seçin : hedef >>seçin

Hedef ayrıntılarını belirtme
hedef seç ekranında, Azure SQL Veritabanı kimlik doğrulama ayarları sağlayın.

Not
şu anda, SQL kimlik doğrulaması desteklenen tek kimlik doğrulama türüdür.
Ileri ' yi seçin : hedef veritabanlarına eşle ekranı, kaynak ve hedef veritabanını geçiş için eşleyin.
Hedef veritabanı, kaynak veritabanıyla aynı veritabanı adını içeriyorsa, Azure veritabanı geçiş hizmeti varsayılan olarak hedef veritabanını seçer.

Ileri ' yi seçin : yapılandırma geçiş ayarları, Tablo listesini Genişlet ve etkilenen alanların listesini gözden geçirin.
Azure veritabanı geçiş hizmeti, hedef Azure SQL Veritabanı örneğinde bulunan tüm boş kaynak tablolarını otomatik olarak seçer. Veri içeren tabloları yeniden geçirmek isterseniz bu dikey pencerede tabloları seçmeniz gerekir.

Ileri ' yi seçin : Özet, geçiş yapılandırmasını gözden geçirin ve etkinlik adı metin kutusunda, geçiş etkinliği için bir ad belirtin.

Geçişi çalıştırma
Geçişi Başlat' ı seçin.
Geçiş etkinliği penceresi görünür ve etkinliğin durumu Beklemede olur.

Geçişi izleme
Geçiş etkinliği ekranında Yenile'yi seçerek geçişin Durum bilgisi Tamamlandı olana kadar gösterilen verileri güncelleştirebilirsiniz.

hedef Azure SQL Veritabanı hedef veritabanlarını doğrulayın.
Ek kaynaklar
- Azure veritabanı geçiş hizmeti hakkında daha fazla bilgi için Azure veritabanı geçiş hizmeti nedir?makalesine bakın.
- Azure SQL Veritabanı hakkında daha fazla bilgi için Azure SQL Veritabanı hizmeti nedir?makalesine bakın.