Aracılığıyla paylaş


Azure hizmetlerinin sunucuya erişmesine izin vermeden bir Azure SQL Veritabanı içeri veya dışarı aktarma

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

Bu makalede, Azure hizmetlerinin ve kaynaklarının bu sunucuya erişmesine izin ver ayarı KAPALI olarak ayarlandığında bir Azure SQL Veritabanı nasıl içeri veya dışarı aktarabileceğiniz gösterilir. Nasıl yapılır makalesi, içeri veya dışarı aktarma işlemini gerçekleştirmek üzere SqlPackage'ı çalıştırmak için bir Azure sanal makinesi kullanır.

Azure hizmetlerinin ve kaynaklarının bu sunucuya erişmesine izin ver ayarı, Azure portalında, Özel Durumlar bölümündeki ağ kaynak menüsündeki Güvenlik menüsünün altında görünür. Bu ayar hakkında daha fazla bilgi için bkz. ağ erişim denetimlerini Azure SQL Veritabanı.

Azure portalda oturum açma

Azure Portal’ında oturum açın.

Azure sanal makinesini oluşturma

Azure'a Dağıt düğmesini seçerek bir Azure sanal makinesi oluşturun.

Bu şablon, en son düzeltme eki uygulanmış sürümü kullanarak Windows sürümü için birkaç farklı seçenek kullanarak basit bir Windows sanal makinesi dağıtmanıza olanak tanır. Bu, kaynak grubu konumuna A2 boyutlu bir VM dağıtır ve VM'nin tam etki alanı adını döndürür.

Azure Hızlı Başlangıç Şablonu da dahil olmak üzere daha fazla bilgi için bkz . Basit bir Windows VM dağıtma.

Sanal makineye bağlanma

Aşağıdaki adımlarda, uzak masaüstü bağlantısı kullanarak sanal makinenize nasıl bağlanabileceğiniz gösterilmektedir.

  1. Dağıtım tamamlandıktan sonra sanal makine kaynağına gidin.

  2. Bağlan'ı seçin.

    Sanal makinenin genel IP adresi ve bağlantı noktası numarasıyla bir Uzak Masaüstü Protokolü dosyası (.rdp dosyası) formu görüntülenir.

    RDP'yi indir seçeneğinin vurgulandığı Azure portal, VM'ye bağlanma ekran görüntüsü.

    Not

    Vm'ye bağlanmanın birden çok yolu vardır. Bu öğreticide VM'ye bağlanmak için Uzak Masaüstü Protokolü (RDP) kullanılır, ancak Ortamınızda Bastion'ı dağıttıysanız, Azure Bastion'ı kullanmak için daha yeni bir çözüm iyi çalışacak bir alternatiftir. VM'nize bağlanmak için SSH de kullanabilirsiniz.

  3. RDP Dosyasını İndir’i seçin.

  4. Sanal makineye bağlan formunu kapatın.

  5. VM'nize bağlanmak için indirilen RDP dosyasını açın.

  6. İstendiğinde Bağlan'ı seçin.

  7. Sanal makineyi oluştururken belirttiğiniz kullanıcı adını ve parolayı girin, ardından Tamam'ı seçin.

  8. Oturum açma işlemi sırasında bir sertifika uyarısı alabilirsiniz. Bağlantıya devam etmek için Evet veya Devam'ı seçin.

SqlPackage'ı yükleme

SqlPackage'ın en son sürümünü indirin ve yükleyin. Daha fazla bilgi için bkz . SqlPackage.

VM'nin veritabanına erişmesine izin vermek için bir güvenlik duvarı kuralı oluşturma

İlk olarak, sanal makinenin genel IP adresini sunucunun güvenlik duvarına ekleyin. Aşağıdaki adımlar, sanal makinenizin genel IP adresi için sunucu düzeyinde bir IP güvenlik duvarı kuralı oluşturur ve sanal makineden bağlantıyı etkinleştirir.

  1. Sol taraftaki menüden SQL veritabanları'nı ve ardından SQL veritabanları sayfasında veritabanınızı seçin. Veritabanınızın genel bakış sayfası açılır ve size tam sunucu adını (örneğin: sql-svr.database.windows.net) gösterir ve daha fazla yapılandırma için seçenekler sağlar.

    Sunucu adının vurgulandığı Azure portalı, veritabanına genel bakış sayfasının ekran görüntüsü.

  2. Sunucunuza ve veritabanlarına bağlanırken kullanmak üzere bu tam sunucu adını kopyalayın.

  3. Araç çubuğunda Sunucu güvenlik duvarını ayarla’yı seçin.

  4. sayfasındaki Genel erişim sekmesindeki Güvenlik duvarı ayarları bölümünde İstemci IPv4 adresinizi ekle'yi seçin. Bu, sanal makinenizin genel IP adresini yeni bir sunucu düzeyinde IP güvenlik duvarı kuralına ekler. Sunucu düzeyinde bir IP güvenlik duvarı kuralı, tek bir IP adresi veya bir IP adresi aralığı için 1433 numaralı bağlantı noktasını açabilir.

  5. Kaydet'i seçin. Sanal makinenizin genel IP adresi için sunucuda 1433 numaralı bağlantı noktasını açan bir sunucu düzeyinde IP güvenlik duvarı kuralı oluşturulur.

SqlPackage kullanarak veritabanını dışarı aktarma

SqlPackage komut satırı yardımcı programını kullanarak bir Azure SQL Veritabanı dışarı aktarmak için bkz. Parametreleri ve özellikleri dışarı aktarma. SqlPackage yardımcı programı, SQL Server Management Studio ve SQL Server Veri Araçları'nin en son sürümleriyle birlikte gönderilir veya SqlPackage'ın en son sürümünü indirebilirsiniz.

Daha fazla bilgi ve BACPAC dosyası oluşturma adımı için bkz . BACPAC dosyasına aktarma.

Çoğu üretim ortamında ölçek ve performans için SqlPackage yardımcı programının kullanılmasını öneririz. BACPAC dosyalarını kullanarak geçiş hakkında bir SQL Server Müşteri Danışmanlık Ekibi blogu için bkz. BACPAC Dosyalarını kullanarak SQL Server’dan Azure SQL Veritabanına Geçiş.

Bu örnekte, Active Directory Evrensel Kimlik Doğrulaması ile SqlPackage kullanarak veritabanını dışarı aktarma işlemi gösterilmektedir. değerini ortamınıza özgü değerlerle değiştirin.

SqlPackage /a:Export /tf:testExport.bacpac /scs:"Data Source=<servername>.database.windows.net;Initial Catalog=MyDB;" /ua:True /tid:"apptest.onmicrosoft.com"

SqlPackage kullanarak veritabanını içeri aktarma

SqlPackage komut satırı yardımcı programını kullanarak bir SQL Server veritabanını içeri aktarmak için bkz. parametreleri ve özellikleri içeri aktarma. SqlPackage en son SQL Server Management Studio ve SQL Server Veri Araçları sahiptir. SqlPackage'ın en son sürümünü de indirebilirsiniz.

Ölçek ve performans için, Azure portalını kullanmak yerine çoğu üretim ortamında SqlPackage kullanmanızı öneririz. Dosyaları kullanarak BACPAC geçiş hakkında bir SQL Server Müşteri Danışmanlığı Ekibi blogu için bkz. BACPAC Dosyalarını kullanarak SQL Server'dan Azure SQL Veritabanı geçiş.

Aşağıdaki SqlPackage komutu, veritabanını yerel depolama alanından bir Azure SQL Veritabanı içeri aktarırAdventureWorks2022. Premium hizmet katmanı ve P6 Hizmet Hedefi ile adlı myMigratedDatabase yeni bir veritabanı oluşturur. Bu değerleri ortamınıza uygun şekilde değiştirin.

SqlPackage /a:import /tcs:"Data Source=<serverName>.database.windows.net;Initial Catalog=myMigratedDatabase>;User Id=<userId>;Password=<password>" /sf:AdventureWorks2022.bacpac /p:DatabaseEdition=Premium /p:DatabaseServiceObjective=P6

Önemli

Şirket güvenlik duvarının arkasından Azure SQL Veritabanı bağlanmak için güvenlik duvarının 1433 numaralı bağlantı noktasının açık olması gerekir.

Bu örnekte, Active Directory Evrensel Kimlik Doğrulaması ile SqlPackage kullanarak veritabanını içeri aktarma işlemi gösterilmektedir.

SqlPackage /a:Import /sf:testExport.bacpac /tdn:NewDacFX /tsn:apptestserver.database.windows.net /ua:True /tid:"apptest.onmicrosoft.com"

Performans değerlendirmeleri

Dışarı aktarma hızları birçok faktöre (örneğin, veri şekli) bağlı olarak farklılık gösterdiği için beklenen hızı tahmin etmek mümkün değildir. SqlPackage, özellikle büyük veritabanları için önemli ölçüde zaman alabilir.

En iyi performans için aşağıdaki stratejileri deneyin:

  1. Veritabanında çalışan başka bir iş yükü olmadığından emin olun. Dışarı aktarmadan önce bir kopya oluşturun, başka hiçbir iş yükünün çalışmadığından emin olmak için en iyi çözüm olabilir.
  2. Dışarı aktarma iş yükünü daha iyi işlemek için veritabanı hizmet düzeyi hedefini (SLO) artırın (öncelikli olarak G/Ç'yi okuyun). Veritabanı şu anda GP_Gen5_4, belki de İş Açısından Kritik katmanı okuma iş yükünde yardımcı olabilir.
  3. Özellikle büyük tablolar için kümelenmiş dizinlerin olduğundan emin olun.
  4. Ağ kısıtlamalarını önlemeye yardımcı olmak için sanal makinelerin (VM) veritabanıyla aynı bölgede olması gerekir.
  5. VM'lerin blob depolamaya yüklemeden önce geçici yapıtlar oluşturmak için yeterli boyuta sahip SSD'leri olmalıdır.
  6. VM'ler belirli bir veritabanı için yeterli çekirdek ve bellek yapılandırmasına sahip olmalıdır.

İçeri veya dışarı aktarılan BACPAC dosyasını depolama

BACPAC dosyası Azure Bloblarında veya Azure Dosyalar depolanabilir.

En iyi performansı elde etmek için Azure Dosyalar kullanın. SqlPackage, doğrudan Azure Dosyalar erişebilmesi için dosya sistemiyle çalışır.

Maliyeti azaltmak için premium Azure dosya paylaşımından daha düşük maliyetli Azure Blobları kullanın. Ancak, içeri veya dışarı aktarma işleminden önce blob ile yerel dosya sistemi arasında BACPAC dosyasını kopyalamanız gerekir. Sonuç olarak, işlem daha uzun sürer.

BACPAC dosyalarını karşıya yüklemek veya indirmek için bkz. AzCopy ve Blob depolama ile veri aktarma ve AzCopy ve dosya depolama ile veri aktarma.

Ortamınıza bağlı olarak Azure Depolama güvenlik duvarlarını ve sanal ağları yapılandırmanız gerekebilir.