Bagikan melalui


Remove-SqlAvailabilityDatabase

Menghapus database ketersediaan dari grup ketersediaannya.

Sintaks

Remove-SqlAvailabilityDatabase
      [-Path] <String[]>
      [-Script]
      [-AccessToken <PSObject>]
      [-TrustServerCertificate]
      [-HostNameInCertificate <String>]
      [-Encrypt <String>]
      [-ProgressAction <ActionPreference>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-SqlAvailabilityDatabase
      [-InputObject] <AvailabilityDatabase[]>
      [-Script]
      [-AccessToken <PSObject>]
      [-TrustServerCertificate]
      [-HostNameInCertificate <String>]
      [-Encrypt <String>]
      [-ProgressAction <ActionPreference>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Deskripsi

cmdlet Remove-SqlAvailabilityDatabase menghapus database ketersediaan dari grup ketersediaannya. Parameter InputObject atau Path menentukan database ketersediaan.

Jika Anda menjalankan cmdlet ini di instans server yang menghosting replika utama, cmdlet akan menghapus database utama dan semua database sekunder yang sesuai dari grup ketersediaan.

Jika Anda menjalankan cmdlet ini di instans server yang menghosting replika sekunder, cmdlet hanya menghapus database sekunder lokal dari grup ketersediaan. Database sekunder tidak lagi bergabung ke grup ketersediaan, tetapi salinan database lainnya terus digabungkan.

Contoh

Contoh 1: Menghapus database dari grup ketersediaan

PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"

Perintah ini menghapus database ketersediaan bernama Database16 dari grup ketersediaan bernama MainAG. Perintah ini berjalan pada instans server yang menghosting replika utama. Oleh karena itu, ini menghapus database utama dan semua database sekunder yang sesuai dari grup ketersediaan. Sinkronisasi data tidak lagi terjadi untuk database ini pada replika sekunder apa pun.

Contoh 2: Menghapus semua database dari grup ketersediaan

PS C:\> Get-ChildItem "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases" | Remove-SqlAvailabilityDatabase

Perintah ini mendapatkan semua database ketersediaan milik MainAG, lalu meneruskannya ke cmdlet saat ini dengan menggunakan operator alur. Cmdlet saat ini menghapus setiap database ketersediaan.

Contoh 3: Menghapus database sekunder dari grup ketersediaan

PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"

Perintah ini menghapus database sekunder bernama Database16 dari replika sekunder yang dihosting oleh instans server bernama SecondaryServer\Instance. Sinkronisasi data ke database sekunder yang dihapus berhenti. Perintah ini tidak memengaruhi database utama atau database sekunder lainnya.

Contoh 4: Membuat skrip untuk menghapus database dari grup ketersediaan

PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16" -Script

Perintah ini membuat skrip Transact-SQL yang menghapus database ketersediaan bernama Database16 dari grup ketersediaan bernama MainAG. Perintah tidak melakukan tindakan ini.

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 PSAccessToken seperti yang dikembalikan dengan menjalankan Get-AzAccessToken -ResourceUrl https://database.windows.net.

Parameter ini baru dalam v22 modul.

Jenis:PSObject
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Confirm

Meminta konfirmasi sebelum menjalankan cmdlet.

Jenis:SwitchParameter
Alias:cf
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Encrypt

Jenis enkripsi yang akan digunakan saat menyambungkan ke SQL Server.

Nilai ini memetakan ke properti EncryptSqlConnectionEncryptOption pada objek SqlConnection 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.

Jenis:String
Nilai yang diterima:Mandatory, Optional, Strict
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard: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.

Jenis:String
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-InputObject

Menentukan database ketersediaan, sebagai objek AvailabilityDatabase, yang dihapus cmdlet ini.

Jenis:AvailabilityDatabase[]
Position:1
Nilai default:None
Diperlukan:True
Terima input alur:True
Terima karakter wildcard:False

-Path

Menentukan jalur database ketersediaan yang dihapus cmdlet.

Jenis:String[]
Position:1
Nilai default:None
Diperlukan:True
Terima input alur:False
Terima karakter wildcard:False

-ProgressAction

Menentukan bagaimana PowerShell merespons pembaruan kemajuan yang dihasilkan oleh skrip, cmdlet, atau penyedia, seperti bilah kemajuan yang dihasilkan oleh cmdlet Write-Progress. cmdlet Write-Progress membuat bilah kemajuan yang memperlihatkan status perintah.

Jenis:ActionPreference
Alias:proga
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-Script

Menunjukkan bahwa cmdlet ini mengembalikan skrip Transact-SQL yang melakukan tugas yang dilakukan cmdlet ini.

Jenis:SwitchParameter
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard: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.

Jenis:SwitchParameter
Position:Named
Nilai default:None
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

-WhatIf

Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.

Jenis:SwitchParameter
Alias:wi
Position:Named
Nilai default:False
Diperlukan:False
Terima input alur:False
Terima karakter wildcard:False

Input

Microsoft.SqlServer.Management.Smo.AvailabilityDatabase

Anda dapat meneruskan database ketersediaan ke cmdlet ini.