Bagikan melalui


Mengimpor atau mengekspor Azure SQL Database menggunakan tautan privat

Berlaku untuk: Azure SQL Database

Artikel ini menjelaskan cara mengimpor atau mengekspor Azure SQL Database menggunakan Private Link dengan menggunakan portal Azure atau Azure PowerShell dengan Izinkan Akses ke Layanan Azure diatur ke NONAKTIF di server logis Azure SQL.

Menjalankan Impor atau Ekspor mengharuskan Anda mengatur Izinkan Akses ke Layanan Azure ke AKTIF, jika tidak, operasi Impor atau Ekspor gagal dengan kesalahan. Seringkali, pengguna ingin melakukan Impor atau Ekspor menggunakan titik akhir privat tanpa memerlukan akses ke semua layanan Azure.

Catatan

Impor/ekspor menggunakan tautan privat untuk Azure SQL Database saat ini dalam pratinjau.

Link privat impor/ekspor database adalah titik akhir privat terkelola layanan yang dibuat oleh Microsoft dan yang digunakan untuk semua komunikasi secara eksklusif oleh proses impor/ekspor database, database Azure SQL, dan layanan Azure Storage terkait. Titik akhir privat yang dikelola layanan adalah alamat IP privat di dalam jaringan virtual tertentu dan subnet.

Titik akhir privat harus disetujui secara manual untuk server logis Azure SQL dan penyimpanan Azure Blob, dalam langkah terpisah, dengan detail yang disertakan dalam tutorial ini.

Diagram arsitektur tautan Impor Ekspor Privat.

Private Link Impor/Ekspor dapat dikonfigurasi melalui portal Azure, PowerShell, atau menggunakan REST API.

  1. Buka halaman Gambaran Umum server logis Azure SQL tempat Anda ingin mengimpor database. Pilih Impor database dari toolbar.
  2. Di halaman Impor database , pilih kotak centang Gunakan tautan privat. Cuplikan layar dari portal Azure yang memperlihatkan cara mengaktifkan tautan Impor Privat.
  3. Masukkan akun penyimpanan, kredensial autentikasi, detail database, dan pilih OK.
  1. Buka halaman Gambaran Umum database Azure SQL yang ingin Anda ekspor. Pilih Ekspor dari toolbar.
  2. Di halaman Ekspor database , pilih kotak centang Gunakan tautan privat. Cuplikan layar dari portal Azure yang memperlihatkan cara mengaktifkan Ekspor Private Link.
  3. Masukkan akun penyimpanan, kredensial autentikasi, detail database, dan pilih OK.

Titik akhir privat baru harus disetujui oleh pengguna di Pusat Private Link atau di Azure SQL Database.

  1. Buka Pusat Private Link di portal Azure. Di kotak pencarian Azure, cari "Private Link".
  2. Navigasi ke halaman Titik akhir privat dari Pusat Private Link.
  3. Setujui titik akhir privat yang Anda buat menggunakan layanan Impor/Ekspor.

Opsi 2: Menyetujui koneksi titik akhir privat di Azure SQL Database di portal Azure

  1. Buka server logis Azure SQL yang menghosting database.

  2. Navigasi ke halaman Jaringan di bawah Keamanan

  3. Pilih tab Akses privat.

  4. Pilih titik akhir privat yang ingin Anda setujui.

  5. Pilih Setujui untuk menyetujui koneksi.

    Cuplikan layar dari portal Azure yang memperlihatkan cara menyetujui Azure SQL Database Private Link.

3. Menyetujui koneksi titik akhir privat di Azure Storage

Menyetujui koneksi titik akhir privat baru untuk file BACPAC impor database di Azure Storage.

  1. Buka akun penyimpanan yang menghosting kontainer blob tempat file BACPAC (.bacpac) berada.
  2. Buka halaman Koneksi titik akhir privat di menu Keamanan .
  3. Pilih titik akhir privat untuk layanan impor/ekspor.
  4. Pilih Setujui untuk menyetujui koneksi.

Cuplikan layar dari portal Azure yang memperlihatkan cara menyetujui Azure Storage Private Link di Azure Storage.

4. Periksa status impor/ekspor

  1. Setelah titik akhir privat disetujui, baik di server Azure SQL maupun akun Azure Storage, pekerjaan impor atau ekspor database akan dimulai. Sampai proses itu selesai, pekerjaan akan ditunda.
  2. Anda dapat memeriksa status pekerjaan impor atau ekspor database di halaman Riwayat Impor/Ekspor di bagian Manajemen Data di halaman server Azure SQL. Cuplikan layar dari portal Azure yang memperlihatkan cara memeriksa Status Pekerjaan Ekspor Impor.

Gunakan cmdlet New-AzSqlDatabaseImport untuk mengirimkan permintaan database impor ke Azure. Bergantung pada ukuran database, impor mungkin membutuhkan waktu untuk menyelesaikannya. Model provisi berbasis DTU mendukung nilai ukuran maksimal database tertentu untuk setiap tingkatan. Saat mengimpor database, gunakan salah satu nilai yang didukung ini.

$importRequest = New-AzSqlDatabaseImport -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 "Standard" -ServiceObjectiveName "P6" ` -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)

Gunakan cmdlet New-AzSqlDatabaseExport untuk mengirimkan permintaan database ekspor ke layanan Azure SQL Database. Bergantung pada ukuran database Anda, operasi ekspor mungkin membutuhkan waktu untuk diselesaikan.

$exportRequest = New-AzSqlDatabaseExport -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)

API yang ada untuk melakukan pekerjaan Impor dan Ekspor telah ditingkatkan untuk mendukung Private Link. Lihat Impor API Database.

Batasan

Saat ini, tautan privat untuk impor/ekspor memiliki batasan berikut:

  • Untuk menggunakan Private Link dengan Impor/Ekspor, database pengguna dan kontainer blob Azure Storage harus dihosting pada jenis Azure Cloud yang sama. Misalnya, di Azure Commercial atau di Azure Gov. Hosting di seluruh jenis cloud tidak didukung.

  • Impor atau Ekspor database dari Azure SQL Managed Instance menggunakan PowerShell saat ini tidak didukung.

  • Tautan Privat Impor/Ekspor tidak boleh digunakan saat Database pengguna atau akun Azure Storage dilindungi oleh Kunci sumber daya.

  • Persetujuan manual dari koneksi titik akhir privat baru diperlukan untuk menyelesaikan operasi ekspor. Setelah memulai ekspor, buka "koneksi tertunda" di Pusat Private Link dan setujui koneksi, yang dapat memakan waktu beberapa menit untuk muncul.

  • Impor menggunakan Private Link tidak dapat menentukan redundansi penyimpanan cadangan saat membuat database baru dan membuat dengan redundansi penyimpanan cadangan geo-redundan default. Sebagai solusinya, pertama-tama buat database kosong dengan redundansi penyimpanan cadangan yang diinginkan menggunakan portal Azure atau PowerShell lalu impor file BACPAC ke database kosong ini.

  • Impor menggunakan REST API dengan tautan privat hanya dapat diselesaikan untuk database yang ada karena API menggunakan ekstensi database. Sebagai solusinya, buat database kosong dengan nama yang diinginkan, lalu panggil Impor REST API dengan tautan privat.