Aracılığıyla paylaş


Özel bağlantı kullanarak Azure SQL Veritabanını içeri veya dışarı aktarma

Şunlar için geçerlidir:Azure SQL Veritabanı

Bu makalede, Azure portalı veya Azure PowerShell ile Özel Bağlantı kullanarak Bir Azure SQL Veritabanını içeri veya dışarı aktarma işlemi açıklanır. Azure SQL mantıksal sunucusundaAzure Hizmetlerine Erişime İzin Ver seçeneğini Kapalı olarak ayarlayın.

Özel Bağlantı'yı kullanarak, Azure Hizmetlerine Erişime İzin Ver'iAçık olarak ayarlamanıza gerek kalmadan içeri ve dışarı aktarma işlemlerini güvenli bir şekilde gerçekleştirebilirsiniz. Bu, standart içeri ve dışarı aktarma işlemleri için gerekli değildir.

Not

Azure SQL Veritabanı için özel bağlantı kullanarak içeri ve dışarı aktarma şu anda önizleme aşamasındadır.

Önkoşullar

Özel Bağlantı ile içeri ve dışarı aktarma özelliğini kullanmadan önce aşağıdaki kaynaklara ve yapılandırmalara sahip olduğunuzdan emin olun:

  • Sanal ağa yapılandırılmış özel uç nokta bağlantısına sahip bir Azure SQL mantıksal sunucusu
  • BACPAC dosyanızı içeren (içeri aktarma için) veya dışarı aktarılan BACPAC dosyasını depolayan blob kapsayıcısı olan bir Azure Depolama hesabı
  • Azure SQL mantıksal sunucusu ve Depolama hesabı, aynı veya eşlenmiş sanal ağlarda yapılandırılmış özel uç noktalara sahip olmalıdır
  • Hem Azure SQL mantıksal sunucusunda hem de Depolama hesabında özel uç nokta bağlantılarını onaylamak için uygun izinler

Veritabanı içeri/dışarı aktarma özel bağlantısı, Microsoft tarafından oluşturulan bir hizmet tarafından yönetilen özel uç noktadır. İçeri veya dışarı aktarma sırasında Özel bağlantı kullan seçeneğini etkinleştirdiğinizde, hizmet veritabanı içeri/dışarı aktarma işlemi, Azure SQL veritabanınız ve Azure Depolama hizmeti arasında güvenli iletişimi kolaylaştırmak için otomatik olarak özel uç noktalar oluşturur.

Hizmet tarafından yönetilen bu özel uç noktalar, mevcut Azure SQL mantıksal sunucu özel uç noktanızın bulunduğu aynı sanal ağ ve alt ağ içinde oluşturulur. Uç noktalar bu alt ağın adres alanından özel IP adresleri alır ve içeri/dışarı aktarma işleminin devam etmesi için el ile onaylanması gerekir.

Önemli

Azure SQL mantıksal sunucunuzda veya Depolama hesabınızda yapılandırılmış özel uç noktalar varsa, içeri/dışarı aktarma hizmeti özellikle içeri/dışarı aktarma işlemi için hizmet tarafından yönetilen ek özel uç noktalar oluşturur. Bu özel uç noktalar mevcut özel uç noktalarınızdan ayrıdır ve ayrı onay gerektirir.

Hem Azure SQL mantıksal sunucusu hem de Azure Blob depolama hesabı için özel uç noktayı ayrı adımlarda el ile onaylamanız gerekir. Bu kılavuz ayrıntıları içerir.

İçeri Aktarma Özel bağlantı mimarisinin diyagramı.

Azure portalı, PowerShell veya REST API aracılığıyla Özel Bağlantıyı İçeri/Dışarı Aktar'ı yapılandırabilirsiniz.

Not

Hizmet, Azure SQL mantıksal sunucunuzun mevcut özel uç noktasıyla aynı sanal ağda ve alt ağda otomatik olarak özel uç noktalar oluşturur. İçeri/dışarı aktarma işlemi sırasında sanal ağı veya alt ağı el ile belirtmeniz gerekmez. SQL sunucunuzda yapılandırılmış bir özel uç nokta yoksa, Özel Bağlantı ile içeri/dışarı aktarma özelliğini kullanmadan önce bir uç nokta ayarlamanız gerekir.

İçeri aktarma özel bağlantısını etkinleştirmeniz ve onaylamanız gerekir. Azure, özel bağlantıyı otomatik olarak oluşturur.

  1. Veritabanını içeri aktarmak istediğiniz Azure SQL mantıksal sunucusunun Genel Bakış sayfasına gidin. Araç çubuğundan Veritabanını içeri aktar'ı seçin.

  2. Veritabanını içeri aktar sayfasında Özel bağlantı kullan seçeneği onay kutusunu seçin.

  3. Depolama hesabını, kimlik doğrulama kimlik bilgilerini, veritabanı ayrıntılarını girin ve Tamam'ı seçin.

Dışarı aktarma özel bağlantısını etkinleştirmeniz ve onaylamanız gerekir. Azure, özel bağlantıyı otomatik olarak oluşturur.

  1. Dışarı aktarmak istediğiniz Azure SQL veritabanının Genel Bakış sayfasına gidin. Araç çubuğundan Dışarı Aktar'ı seçin.
  2. Veritabanını dışarı aktar sayfasında Özel bağlantı kullan seçeneği onay kutusunu seçin.
  3. Depolama hesabını, kimlik doğrulama kimlik bilgilerini, veritabanı ayrıntılarını girin ve Tamam'ı seçin.

Kullanıcının Özel Bağlantı Merkezi'nde veya Azure SQL Veritabanı'nda yeni özel uç noktayı onaylaması gerekir. Her iki özel bağlantıyı da ilgili Azure portalı konumlarında tek tek onaylayabilirsiniz.

Tavsiye

Azure SQL mantıksal sunucunuz ve Depolama hesabınız için yapılandırılmış özel uç noktalarınız zaten varsa, hizmet tarafından yönetilen yeni özel uç noktaların bekleyen bağlantılar olarak göründüğünü görürsünüz. Bu özel uç noktalar özellikle içeri/dışarı aktarma işlemine yöneliktir ve mevcut özel uç noktalarınızdan ayrıdır. İçeri/dışarı aktarma hizmeti tarafından oluşturulduklarını belirten adlara sahip özel uç noktaları arayın.

  1. Azure portalında Özel Bağlantı Merkezi'ne gidin. Azure arama kutusunda Özel Bağlantı'yı arayın. özel bağlantıseçin.

  2. Özel Bağlantı Merkezi'nde Bekleyen bağlantılar'ı seçin.

  3. İçeri/Dışarı Aktarma hizmetini kullanarak oluşturduğunuz her iki özel uç noktayı da seçin. seçinonaylayın.

    Azure portalının Özel Bağlantı Merkezi'nden her iki özel bağlantının da nasıl onaylanmış olduğunu gösteren ekran görüntüsü.

2. Seçenek: Azure portalında özel uç nokta bağlantılarını ayrı olarak onaylama

  1. Veritabanını barındıran Azure SQL mantıksal sunucusuna gidin.

  2. Güvenlikaltındaki kaynak menüsünde ağ seçin.

  3. Özel erişim sekmesini seçin.

  4. Özel uç nokta bağlantıları'nın altındaki listede İçeri/Dışarı Aktarma hizmetini kullanarak oluşturduğunuz özel uç noktaları seçin.

  5. seçinonaylayın.

    Azure portalında Azure SQL Veritabanı Özel Bağlantı nasıl onaylandığını gösteren ekran görüntüsü.

  6. BACPAC (.bacpac) dosyasının bulunduğu blob kapsayıcısını barındıran depolama hesabına gidin.

  7. Güvenlik + Ağaltında, seçin.

  8. Özel uç nokta bağlantıları sekmesini seçin.

  9. Listede içeri/dışarı aktarma hizmeti için özel uç noktayı seçin.

  10. Bağlantıyı onaylamak için Onayla'yı seçin.

    Azure Depolama'da Azure Depolama Özel Bağlantı nasıl onaylandığını gösteren Azure portalının ekran görüntüsü.

3. İçeri/dışarı aktarma durumunu denetleyin

  1. Hem Azure SQL sunucusu hem de Azure Depolama hesabındaki özel uç noktaları onayladıktan sonra, veritabanı içeri veya dışarı aktarma işi başlar. O zamana kadar işlerde bir duraklama var.

  2. Veritabanı içeri veya dışarı aktarma işlerinin durumunu, Azure SQL sunucusu sayfasındaki Veri Yönetimi bölümü altındaki İçeri/Dışarı Aktarma Geçmişi sayfasından de kontrol edebilirsiniz.

    Dışarı Aktarma İşleri Durumunun nasıl denetlendiğini gösteren Azure portalının ekran görüntüsü.

PowerShell kullandığınızda hizmet tarafından yönetilen özel uç noktalar, Azure SQL mantıksal sunucunuzun mevcut özel uç noktasıyla aynı sanal ağda ve alt ağda otomatik olarak oluşturulur. Bu komutları çalıştırmadan önce SQL sunucunuzda özel uç nokta bağlantısının yapılandırıldığından emin olun.

Azure'a bir içeri aktarma veritabanı isteği göndermek için New-AzSqlDatabaseImport cmdlet'ini kullanın. Veritabanı boyutuna bağlı olarak içeri aktarma işleminin tamamlanması biraz zaman alabilir. DTU tabanlı sağlama modeli, her katman için belirli veritabanı maksimum boyut değerlerini destekler. Veritabanını içeri aktarırken Azure SQL Veritabanıiçin desteklenen sürüm ve hizmet hedefi değerlerini kullanın.

Kendi <values> kodunuzu sağlayarak, sample.bacpac adlı .bacpac dosyasını içeri aktaran ve iki Genel Amaçlı sanal çekirdek içeren bir Azure SQL Veritabanı oluşturan aşağıdaki PowerShell kod örneğini inceleyin.

$importRequestParams = @{
   ResourceGroupName                      = "<resourceGroupName>"
   ServerName                             = "<serverName>"
   DatabaseName                           = "<databaseName>"
   DatabaseMaxSizeBytes                   = "<databaseSizeInBytes>"
   StorageKeyType                         = "StorageAccessKey"
   StorageKey                             = $(Get-AzStorageAccountKey -ResourceGroupName $resourceGroupName -StorageAccountName "<storageAccountName>").Value[0]
   StorageUri                             = "https://myStorageAccount.blob.core.windows.net/importsample/sample.bacpac"
   Edition                                = "GeneralPurpose"
   ServiceObjectiveName                   = "GP_Gen5_2"
   UseNetworkIsolation                    = $true
   StorageAccountResourceIdForPrivateLink = "/subscriptions/<subscriptionId>/resourceGroups/<resource_group_name>/providers/Microsoft.Storage/storageAccounts/<storage_account_name>"
   SqlServerResourceIdForPrivateLink      = "/subscriptions/<subscriptionId>/resourceGroups/<resource_group_name>/providers/Microsoft.Sql/servers/<server_name>"
   AdministratorLogin                     = "<userID>"
   AdministratorLoginPassword             = $(ConvertTo-SecureString -String "<password>" -AsPlainText -Force)
}

$importRequest = New-AzSqlDatabaseImport @importRequestParams

Azure SQL Veritabanı hizmetine bir dışarı aktarma veritabanı isteği göndermek için New-AzSqlDatabaseExport cmdlet'ini kullanın. Veritabanınızın boyutuna bağlı olarak dışarı aktarma işleminin tamamlanması biraz zaman alabilir.

Aşağıdaki PowerShell kod örneğine kendi <values>'nızı ekleyin:

$exportRequestParams = @{
   ResourceGroupName                      = "<resourceGroupName>"
   ServerName                             = "<serverName>"
   DatabaseName                           = "<databaseName>"
   StorageKeyType                         = "StorageAccessKey"
   StorageKey                             = $(Get-AzStorageAccountKey -ResourceGroupName $resourceGroupName -StorageAccountName "<storageAccountName>").Value[0]
   StorageUri                             = "https://myStorageAccount.blob.core.windows.net/importsample/sample.bacpac"
   UseNetworkIsolation                    = $true
   StorageAccountResourceIdForPrivateLink = "/subscriptions/<subscriptionId>/resourceGroups/<resource_group_name>/providers/Microsoft.Storage/storageAccounts/<storage_account_name>"
   SqlServerResourceIdForPrivateLink      = "/subscriptions/<subscriptionId>/resourceGroups/<resource_group_name>/providers/Microsoft.Sql/servers/<server_name>"
   AdministratorLogin                     = "<userID>"
   AdministratorLoginPassword             = $(ConvertTo-SecureString -String "<password>" -AsPlainText -Force)
}

$exportRequest = New-AzSqlDatabaseExport @exportRequestParams

İçeri ve Dışarı Aktarma işlerini gerçekleştirmek için mevcut API'ler Özel Bağlantıyı destekler. Veritabanı API'sini İçeri Aktarma'ya bakın.

Sınırlamalar

Şu anda içeri/dışarı aktarma için özel bağlantı aşağıdaki sınırlamalara sahiptir:

  • Özel Bağlantı'yı İçeri/Dışarı Aktarma ile kullanmak için kullanıcı veritabanı ve Azure Depolama blob kapsayıcısı aynı Azure Bulut türünde olmalıdır. Örneğin, her ikisi de Azure Ticari'de veya her ikisi de Azure Gov'da olmalıdır. Bulut türleri arasında barındırma desteklenmez.

  • PowerShell kullanarak Azure SQL Yönetilen Örneği'nden veritabanını içeri veya dışarı aktarma işlemi şu anda desteklenmiyor.

  • Kullanıcı Veritabanı veya Azure Depolama hesabı Kaynak kilitleri tarafından korunduğunda Özel Bağlantıyı İçeri/Dışarı Aktar'ı kullanmayın.

  • Dışarı aktarma işlemini tamamlamak için yeni özel uç nokta bağlantısını el ile onaylamanız gerekir. Dışarı aktarma işlemine başladıktan sonra Özel Bağlantı Merkezi'nde bekleyen bağlantılara gidin ve bağlantıları onaylayın; bu işlem birkaç dakika sürebilir.

  • Özel Bağlantı kullanarak içeri aktarma, yeni bir veritabanı oluştururken yedek depolama yedekliliği belirtmeyi desteklemez ve varsayılan coğrafi yedeklemeli yedek depolama yedekliliği ile oluşturur. Geçici bir çözüm olarak, önce Azure portalını veya PowerShell'i kullanarak istenen yedekleme depolama yedekliliğine sahip boş bir veritabanı oluşturun, ardından BACPAC dosyasını bu boş veritabanına aktarın.

  • ÖZEL bağlantıyla REST API kullanarak içeri aktarma işlemi yalnızca mevcut bir veritabanı için tamamlanabilir çünkü API veritabanı uzantılarını kullanır. Geçici bir çözüm olarak, istenen ada sahip boş bir veritabanı oluşturun ve ardından REST API'sini özel bağlantıyla içeri aktarın.