Set-SqlAvailabilityReplica
Mengatur pengaturan pada replika ketersediaan.
Sintaks
ByPath (Default)
Set-SqlAvailabilityReplica
[[-Path] <String>]
[-AvailabilityMode <AvailabilityReplicaAvailabilityMode>]
[-FailoverMode <AvailabilityReplicaFailoverMode>]
[-EndpointUrl <String>]
[-SessionTimeout <Int32>]
[-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
[-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
[-SeedingMode <AvailabilityReplicaSeedingMode>]
[-BackupPriority <Int32>]
[-ReadOnlyRoutingList <String[]>]
[-ReadonlyRoutingConnectionUrl <String>]
[-LoadBalancedReadOnlyRoutingList <String[][]>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByObject
Set-SqlAvailabilityReplica
[-InputObject] <AvailabilityReplica>
[-AvailabilityMode <AvailabilityReplicaAvailabilityMode>]
[-FailoverMode <AvailabilityReplicaFailoverMode>]
[-EndpointUrl <String>]
[-SessionTimeout <Int32>]
[-ConnectionModeInPrimaryRole <AvailabilityReplicaConnectionModeInPrimaryRole>]
[-ConnectionModeInSecondaryRole <AvailabilityReplicaConnectionModeInSecondaryRole>]
[-SeedingMode <AvailabilityReplicaSeedingMode>]
[-BackupPriority <Int32>]
[-ReadOnlyRoutingList <String[]>]
[-ReadonlyRoutingConnectionUrl <String>]
[-LoadBalancedReadOnlyRoutingList <String[][]>]
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Deskripsi
Set cmdlet Set-SqlAvailabilityReplica atau memodifikasi berbagai properti untuk replika ketersediaan. Jalankan cmdlet ini pada instans server yang menghosting replika utama.
Contoh
Contoh 1: Mengubah mode ketersediaan replika dan failover otomatis
PS C:\> Set-SqlAvailabilityReplica -AvailabilityMode "SynchronousCommit" -FailoverMode Automatic -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityReplicas\Replica02"
Perintah ini memodifikasi replika bernama Replica02 dalam grup ketersediaan bernama MainAG untuk menggunakan synchronous-commit mode ketersediaan dan untuk mendukung automatic failover.
Contoh 2: Mengubah replika untuk mendukung failover manual paksa
PS C:\> Set-SqlAvailabilityReplica -AvailabilityMode AsynchronousCommit -FailoverMode Manual -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityReplicas\Replica02"
Perintah ini memodifikasi replika bernama Replica02 dalam grup ketersediaan bernama MainAG untuk menggunakan asynchronous-commit mode ketersediaan dan hanya forced manual failovermendukung , yang dapat menyebabkan kehilangan data.
Contoh 3: Izinkan semua koneksi dalam peran sekunder
PS C:\> Set-SqlAvailabilityReplica -ConnectionModeInSecondaryRole AllowAllConnections -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityReplicas\Replica02"
Perintah ini memodifikasi replika Replica02 dalam grup MainAG ketersediaan untuk memungkinkan semua koneksi dalam peran sekunder.
Ini memungkinkan Anda membongkar beban kerja pemrosesan data baca-saja ke replika sekunder.
Contoh 4: Mengonfigurasi replika utama dan replika sekunder untuk perutean baca-saja
PS C:\> Set-Location "SQLSERVER:\SQL\PrimaryServer\default\AvailabilityGroups\MainAG"
PS C:\> $PrimaryReplica = Get-Item "AvailabilityReplicas\PrimaryServer"
PS C:\> $SecondaryReplica = Get-Item "AvailabilityReplicas\SecondaryServer"
PS C:\> Set-SqlAvailabilityReplica -ReadOnlyRoutingConnectionUrl "TCP://PrimaryServer.domain.com:5022" -InputObject $PrimaryReplica
PS C:\> Set-SqlAvailabilityReplica -ReadOnlyRoutingConnectionUrl "TCP://SecondaryServer.domain.com:5022" -InputObject $SecondaryReplica
PS C:\> Set-SqlAvailabilityReplica -ReadOnlyRoutingList "SecondaryServer","PrimaryServer" -InputObject $PrimaryReplica
Perintah pertama mengubah lokasi ke lokasi di penyedia SQLSERVER: .
Perintah keempat menetapkan URL perutean baca-saja ke replika utama. Kemudian mengatur daftar perutean baca-saja pada replika utama.
Contoh 5: Mengubah prioritas pencadangan
PS C:\> Set-SqlAvailabilityReplica -BackupPriority 60 -Path "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAG\AvailabilityReplicas\Replica02"
Perintah ini mengatur prioritas cadangan replika Replica02 ketersediaan ke 60.
Prioritas ini digunakan oleh instans server yang menghosting replika utama untuk memutuskan replika mana yang harus melayani permintaan pencadangan otomatis pada database dalam grup ketersediaan. Replika yang memiliki prioritas tertinggi dipilih.
Parameter
-AccessToken
Token akses yang digunakan untuk mengautentikasi ke SQL Server, sebagai alternatif untuk pengguna/kata sandi atau Autentikasi Windows.
Ini dapat digunakan, misalnya, untuk menyambungkan ke SQL Azure DB dan SQL Azure Managed Instance menggunakan Service Principal atau Managed Identity.
Parameter yang digunakan dapat berupa string yang mewakili token atau objek seperti yang PSAccessToken dikembalikan dengan menjalankan Get-AzAccessToken -ResourceUrl https://database.windows.net.
Parameter ini baru dalam v22 modul.
Properti parameter
| Jenis: | PSObject |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-AvailabilityMode
Menentukan mode ketersediaan replika.
Anda dapat menentukan nilai $Null.
Properti parameter
| Jenis: | AvailabilityReplicaAvailabilityMode |
| Nilai default: | None |
| Nilai yang diterima: | AsynchronousCommit, SynchronousCommit, Unknown, ConfigurationOnly |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-BackupPriority
Menentukan prioritas replika yang diinginkan dalam melakukan pencadangan. Nilai yang dapat diterima untuk parameter ini adalah bilangan bulat dari 0 hingga 100. Dari set replika yang online dan tersedia, replika yang memiliki prioritas tertinggi melakukan pencadangan.
Nilai nol (0) menunjukkan bahwa replika bukan kandidat.
Properti parameter
| Jenis: | Int32 |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Confirm
Meminta konfirmasi sebelum menjalankan cmdlet.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | False |
| Mendukung wildcard: | False |
| DontShow: | False |
| Alias: | Cf |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-ConnectionModeInPrimaryRole
Menentukan bagaimana replika ketersediaan menangani koneksi saat berada dalam peran utama. Nilai yang dapat diterima untuk parameter ini adalah:
- AllowReadWriteConnections. Mengizinkan koneksi baca/tulis.
- AllowAllConnections. Mengizinkan semua koneksi.
Properti parameter
| Jenis: | AvailabilityReplicaConnectionModeInPrimaryRole |
| Nilai default: | None |
| Nilai yang diterima: | AllowAllConnections, AllowReadWriteConnections, Unknown |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-ConnectionModeInSecondaryRole
Menentukan bagaimana replika ketersediaan menangani koneksi saat berada dalam peran sekunder. Nilai yang dapat diterima untuk parameter ini adalah:
- AllowNoConnections. Melarang koneksi.
- AllowReadIntentConnectionsOnly. Hanya mengizinkan koneksi baca-niat.
- AllowAllConnections. Mengizinkan semua koneksi.
Properti parameter
| Jenis: | AvailabilityReplicaConnectionModeInSecondaryRole |
| Nilai default: | None |
| Nilai yang diterima: | AllowNoConnections, AllowReadIntentConnectionsOnly, AllowAllConnections, Unknown |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Encrypt
Jenis enkripsi yang akan digunakan saat menyambungkan ke SQL Server.
Nilai ini memetakan ke Encrypt properti SqlConnectionEncryptOption pada objek SqlConnection dari driver Microsoft.Data.SqlClient.
Dalam v22 modul, defaultnya adalah Optional (untuk kompatibilitas dengan v21). Dalam v23+ modul, nilai defaultnya adalah 'Wajib', yang dapat membuat perubahan yang melanggar untuk skrip yang ada.
Parameter ini baru dalam v22 modul.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Nilai yang diterima: | Mandatory, Optional, Strict |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-EndpointUrl
Menentukan URL titik akhir pencerminan database.
URL ini adalah alamat TCP dalam formulir berikut: TCP://system-address:port
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-FailoverMode
Menentukan mode failover.
Anda dapat menentukan nilai $Null.
Properti parameter
| Jenis: | AvailabilityReplicaFailoverMode |
| Nilai default: | None |
| Nilai yang diterima: | Automatic, Manual, External, Unknown |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-HostNameInCertificate
Nama host yang akan digunakan dalam memvalidasi sertifikat SQL Server TLS/SSL. Anda harus meneruskan parameter ini jika instans SQL Server Anda diaktifkan untuk Enkripsi Paksa dan Anda ingin terhubung ke instans menggunakan nama host/nama pendek. Jika parameter ini dihilangkan, maka meneruskan Nama Domain yang Sepenuhnya Memenuhi Syarat (FQDN) ke -ServerInstance diperlukan untuk terhubung ke instans SQL Server yang diaktifkan untuk Enkripsi Paksa.
Parameter ini baru dalam v22 modul.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-InputObject
Menentukan grup ketersediaan, sebagai objek AvailabilityGroup, tempat replika berada.
Properti parameter
| Jenis: | AvailabilityReplica |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
ByObject
| Position: | 1 |
| Wajib: | True |
| Nilai dari alur: | True |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-LoadBalancedReadOnlyRoutingList
Menentukan daftar perutean baca-saja yang seimbang.
Daftar perutean adalah daftar set seimbang beban, yang pada gilirannya adalah daftar replika.
Misalnya, meneruskan nilai seperti
@('Server1','Server2'),@('Server3'),@('Server4')
berarti apa yang kita lewati 3 set seimbang beban: 1 dengan 2 replika (Server1 dan Server2) dan 2 hanya dengan satu (Server3 dan Server4, masing-masing).
Pada runtime, SQL Server akan terlihat secara berurutan di semua set yang seimbang beban sampai menemukan satu skema sehingga setidaknya pada replika di dalamnya tersedia dan menggunakannya untuk penyeimbangan beban.
Jadi, dalam contoh di atas, jika Server1 dan Server2 tidak tersedia, tetapi Server3 adalah, SQL Server akan memilih Server3.
Cmdlet ini hanya mengatur daftar perutean baca-saja dan tidak memeriksa ketersediaan replika yang ditentukan.
Properti parameter
| Jenis: | String[][] |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Path
Menentukan jalur grup ketersediaan tempat replika berada. Jika Anda tidak menentukan parameter ini, cmdlet ini menggunakan lokasi kerja saat ini.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
ByPath
| Position: | 1 |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-ReadonlyRoutingConnectionUrl
Menentukan nama domain yang sepenuhnya memenuhi syarat (FQDN) dan port yang akan digunakan saat perutean ke replika untuk koneksi baca-saja, seperti dalam contoh berikut: TCP://DBSERVER8.manufacturing.Contoso.com:7024
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-ReadOnlyRoutingList
Menentukan daftar nama server replika yang diurutkan yang mewakili urutan pemeriksaan untuk digunakan oleh direktur koneksi saat mengalihkan koneksi baca-saja melalui replika ketersediaan ini. Parameter ini berlaku jika replika ketersediaan adalah replika utama grup ketersediaan saat ini.
Properti parameter
| Jenis: | String[] |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Script
Menunjukkan bahwa cmdlet ini mengembalikan skrip Transact-SQL yang melakukan tugas yang dilakukan cmdlet ini.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-SeedingMode
Menentukan bagaimana replika sekunder awalnya akan disemai.
Nilai yang diizinkan:
- Otomatis. Mengaktifkan seeding langsung. Metode ini akan menyemai replika sekunder melalui jaringan. Metode ini tidak mengharuskan Anda untuk mencadangkan dan memulihkan salinan database utama pada replika.
- Panduan. Menentukan seeding manual. Metode ini mengharuskan Anda membuat cadangan database pada replika utama dan memulihkan cadangan tersebut secara manual pada replika sekunder.
Properti parameter
| Jenis: | AvailabilityReplicaSeedingMode |
| Nilai default: | None |
| Nilai yang diterima: | Automatic, Manual |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-SessionTimeout
Menentukan jumlah waktu, dalam detik, untuk menunggu respons antara replika utama dan replika ini sebelum koneksi gagal.
Properti parameter
| Jenis: | Int32 |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-TrustServerCertificate
Menunjukkan apakah saluran akan dienkripsi saat melewati rantai sertifikat untuk memvalidasi kepercayaan.
Dalam v22 modul, defaultnya adalah $true (untuk kompatibilitas dengan v21). Dalam v23+ modul, nilai defaultnya adalah '$false', yang dapat membuat perubahan yang melanggar untuk skrip yang ada.
Parameter ini baru dalam v22 modul.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-WhatIf
Menunjukkan apa yang akan terjadi ketika cmdlet dijalankan. Cmdlet tidak dijalankan.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | False |
| Mendukung wildcard: | False |
| DontShow: | False |
| Alias: | wi |
Set parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
CommonParameters
Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.