Gambaran umum prasyarat untuk menggunakan Azure Database Migration Service

Ada beberapa prasyarat yang diperlukan untuk memastikan Azure Database Migration Service berjalan lancar saat melakukan migrasi database. Beberapa prasyarat berlaku di semua skenario (pasangan target sumber) yang didukung oleh layanan, sementara prasyarat lain khusus untuk skenario tertentu.

Prasyarat yang terkait dengan penggunaan Azure Database Migration Service dicantumkan di bagian berikut.

Prasyarat yang umum di seluruh skenario migrasi

Prasyarat Azure Database Migration Service yang umum di semua skenario migrasi yang didukung mencakup kebutuhan untuk:

  • Membuat Microsoft Azure Virtual Network untuk Azure Database Migration Service menggunakan model penyebaran Azure Resource Manager, yang menyediakan konektivitas antar-situs ke server sumber lokal Anda menggunakan ExpressRoute atau VPN.

  • Memastikan bahwa aturan Network Security Group (NSG) jaringan virtual tidak memblokir port keluar 443 ServiceTag untuk ServiceBus, Storage, dan AzureMonitor. Untuk detail selengkapnya tentang pemfilteran lalu lintas NSG jaringan virtual, lihat artikel Filter lalu lintas dengan kelompok keamanan jaringan.

  • Saat menggunakan alat firewall di depan database sumber, Anda mungkin perlu menambahkan aturan firewall untuk mengizinkan Azure Database Migration Service mengakses database sumber untuk migrasi.

  • Konfigurasikan Windows Firewall untuk akses mesin database Anda.

  • Aktifkan protokol TCP/IP, yang dinonaktifkan secara default selama instalasi SQL Server Express, dengan mengikuti instruksi dalam artikel Aktifkan atau Nonaktifkan Protokol Jaringan Server.

    Penting

    Membuat instans Azure Database Migration Service memerlukan akses ke pengaturan jaringan virtual yang biasanya tidak berada dalam grup sumber daya yang sama. Akibatnya, pengguna yang membuat instans DMS memerlukan izin di tingkat langganan. Untuk membuat peran yang diperlukan, yang dapat Anda tetapkan sesuai kebutuhan, jalankan skrip berikut:

    
    $readerActions = `
    "Microsoft.Network/networkInterfaces/ipConfigurations/read", `
    "Microsoft.DataMigration/*/read", `
    "Microsoft.Resources/subscriptions/resourceGroups/read"
    
    $writerActions = `
    "Microsoft.DataMigration/*/write", `
    "Microsoft.DataMigration/*/delete", `
    "Microsoft.DataMigration/*/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
    

Prasyarat untuk memigrasikan SQL Server ke Azure SQL Database

Selain prasyarat Azure Database Migration Service yang umum untuk semua skenario migrasi, ada juga prasyarat yang berlaku khusus untuk satu skenario atau skenario lainnya.

Saat menggunakan Azure Database Migration Service untuk melakukan migrasi SQL Server ke Azure SQL Database, di samping prasyarat yang umum untuk semua skenario migrasi, pastikan untuk membahas prasyarat tambahan berikut:

  • Buat instans dari instans Azure SQL Database dengan mengikuti detail dalam artikel Membuat database di Azure SQL Database di portal Azure.

  • Unduh dan pasang Asisten Migrasi Data v3.3 atau yang lebih baru.

  • Buka Windows Firewall untuk mengizinkan Azure Database Migration Service mengakses SQL Server sumber, yang secara default adalah port TCP 1433.

  • Jika menjalankan beberapa instans SQL Server bernama menggunakan port dinamis, Anda mungkin perlu mengaktifkan Layanan SQL Browser dan mengizinkan akses ke port UDP 1434 melalui firewall sehingga Azure Database Migration Service dapat tersambung ke instans bernama di server sumber.

  • Buat aturan firewall tingkat server untuk Azure SQL Database guna mengizinkan akses Azure Database Migration Service ke database target. Berikan rentang subnet jaringan virtual yang digunakan untuk Azure Database Migration Service.

  • Pastikan kredensial yang digunakan untuk tersambung ke instans SQL Server sumber memiliki izin SERVER KONTROL.

  • Pastikan bahwa kredensial yang digunakan untuk tersambung ke database target memiliki izin DATABASE KONTROL pada database target.

    Catatan

    Untuk daftar lengkap prasyarat yang diperlukan untuk menggunakan Azure Database Migration Service untuk melakukan migrasi dari SQL Server ke Azure SQL Database, lihat tutorial Memigrasikan SQL Server ke Azure SQL Database.

Prasyarat untuk memigrasikan SQL Server ke Azure SQL Managed Instance

  • Buat SQL Managed Instance dengan mengikuti detail di artikel Membuat Azure SQL Managed Instance di portal Azure.

  • Buka firewall untuk memungkinkan lalu lintas SMB di port 445 bagi rentang alamat IP atau subnet Azure Database Migration Service.

  • Buka Windows Firewall untuk mengizinkan Azure Database Migration Service mengakses SQL Server sumber, yang secara default adalah port TCP 1433.

  • Jika menjalankan beberapa instans SQL Server bernama menggunakan port dinamis, Anda mungkin perlu mengaktifkan Layanan SQL Browser dan mengizinkan akses ke port UDP 1434 melalui firewall sehingga Azure Database Migration Service dapat tersambung ke instans bernama di server sumber.

  • Pastikan bahwa kredensial yang digunakan untuk menyambungkan SQL Server sumber dan Instans terkelola target merupakan anggota peran server sysadmin.

  • Buat berbagi jaringan yang dapat digunakan Azure Database Migration Service untuk mencadangkan database sumber.

  • Pastikan bahwa akun layanan yang menjalankan instans SQL Server sumber memiliki hak istimewa tulis pada berbagi jaringan yang Anda buat dan bahwa akun komputer untuk server sumber memiliki akses baca/tulis ke berbagi yang sama.

  • Catat pengguna (dan kata sandi) Windows yang memiliki hak istimewa kontrol penuh di berbagi jaringan yang sebelumnya Anda buat. Azure Database Migration Service meniru kredensial pengguna untuk mengunggah file cadangan ke kontainer Azure Storage untuk operasi pemulihan.

  • Buat kontainer blob dan ambil URI SAS-nya menggunakan langkah-langkah dalam artikel Mengelola sumber daya Azure Blob Storage dengan Storage Explorer. Pastikan untuk memilih semua izin (Baca, Tulis, Hapus, Daftar) pada jendela kebijakan saat membuat URI SAS.

    Catatan

    Untuk daftar lengkap prasyarat yang diperlukan untuk menggunakan Azure Database Migration Service untuk melakukan migrasi dari SQL Server ke SQL Managed Instance, lihat tutorial Memigrasikan SQL Server ke SQL Managed Instance.

Langkah berikutnya

Untuk ringkasan Azure Database Migration Service dan ketersediaan wilayah, lihat artikel Apa itu Azure Database Migration Service.