Menghapus Aplikasi tingkat Data
Berlaku untuk:SQL ServerAzure SQL Database
Anda dapat menghapus aplikasi tingkat data dengan menggunakan wizard Hapus Aplikasi tingkat Data atau skrip Windows PowerShell. Anda dapat menentukan apakah database terkait dipertahankan, dilepas, atau dihilangkan.
Sebelum Anda memulai:Batasan dan Pembatasan, Izin
Untuk meningkatkan DAC, menggunakan:Wizard Aplikasi Tingkat Data Daftar, PowerShell
Sebelum Anda mulai
Saat Anda menghapus instans aplikasi tingkat data (DAC), Anda memilih salah satu dari tiga opsi yang menentukan apa yang harus dilakukan dengan database yang terkait dengan aplikasi tingkat data. Ketiga opsi menghapus metadata definisi DAC. Opsi berbeda dalam apa yang mereka lakukan dengan database yang terkait dengan aplikasi tingkat data. Wizard tidak menghapus objek tingkat instans apa pun yang terkait dengan DAC atau database, seperti masuk.
Opsi | Tindakan database |
---|---|
Hapus pendaftaran | Database terkait tetap utuh. |
Melepas database | Database terkait dilepaskan. Instans Mesin Database tidak dapat mereferensikan database, tetapi data dan file log utuh. |
Menghapus database | Database terkait dihilangkan. File data dan log dihapus. |
Batasan dan Pembatasan
Tidak ada mekanisme otomatis untuk memulihkan metadata definisi DAC atau database setelah Anda menghapus DAC. Bagaimana Anda dapat membangun kembali instans DAC secara manual tergantung pada opsi hapus.
Opsi | Cara Membangun Kembali Instans DAC |
---|---|
Hapus pendaftaran | Daftarkan DAC dari database yang tersisa. |
Melepas database | Lampirkan ulang database dengan menggunakan sp_attachdb atau SQL Server Management Studio, lalu daftarkan instans DAC baru dari database. |
Menghapus database | Pulihkan database dari cadangan lengkap yang dibuat sebelum DAC dihapus, lalu daftarkan instans DAC baru dari database. |
Peringatan
Membangun kembali instans DAC dengan mendaftarkan DAC dari database yang dipulihkan atau dilampirkan kembali tidak akan membuat ulang beberapa bagian DAC asli, seperti kebijakan pemilihan server.
Izin
DAC hanya dapat dihapus oleh anggota peran server tetap sysadmin atau serveradmin , atau oleh pemilik database. Akun administrator sistem SQL Server bawaan bernama sa juga dapat meluncurkan wizard.
Menggunakan Wizard Hapus Aplikasi tingkat Data
Untuk Menghapus DAC Menggunakan Wizard
Di Object Explorer, perluas simpul untuk instans yang berisi DAC yang akan dihapus.
Perluas node Manajemen .
Perluas simpul Aplikasi tingkat data.
Klik kanan DAC yang akan dihapus, lalu pilih Hapus Aplikasi tingkat Data...
Selesaikan dialog wizard:
Halaman Pengantar
Halaman ini menjelaskan langkah-langkah untuk menghapus aplikasi tingkat data.
Jangan tampilkan halaman ini lagi. - Klik kotak centang untuk menghentikan halaman ditampilkan di masa mendatang.
Berikutnya > - Melanjutkan ke halaman Pilih Metode .
Batal - Mengakhiri wizard tanpa menghapus aplikasi atau database tingkat data.
Menggunakan Wizard Hapus Aplikasi tingkat Data
Pilih Halaman Metode
Gunakan halaman ini untuk menentukan opsi untuk menangani database yang terkait dengan DAC yang akan dihapus.
Hapus pendaftaran - Menghapus metadata yang menentukan aplikasi tingkat data, tetapi membiarkan database terkait tetap utuh.
Lepaskan database - Menghapus metadata yang menentukan aplikasi tingkat data dan mencopot database terkait.
Database tidak dapat lagi dirujuk oleh instans Mesin Database tersebut, tetapi file data dan log tetap utuh.
Hapus database - Menghapus metadata yang menentukan DAC dan menghilangkan database terkait.
File data dan log untuk database dihapus secara permanen.
< Sebelumnya - Kembali ke halaman Pengenalan .
Berikutnya > - Melanjutkan ke halaman Ringkasan .
Batal - Mengakhiri wizard tanpa menghapus DAC atau database.
Menggunakan Wizard Hapus Aplikasi tingkat Data
Halaman ringkasan
Gunakan halaman ini untuk meninjau tindakan yang akan diambil wizard saat menghapus instans DAC.
Tinjau ringkasan pilihan Anda - Tinjau METODE DAC, database, dan penghapusan yang ditampilkan dalam kotak. Jika informasi sudah benar, pilih Berikutnya atau Selesai untuk menghapus DAC. Jika informasi DAC dan database tidak benar, pilih Batal dan pilih DAC yang benar. Jika metode penghapusan tidak benar, pilih Sebelumnya untuk kembali ke halaman Pilih Metode dan pilih metode lain.
< Sebelumnya - Kembali ke halaman Pilih Metode untuk memilih metode penghapusan yang berbeda.
Berikutnya > - Menghapus instans DAC menggunakan metode yang Anda pilih di halaman sebelumnya, dan melanjutkan ke halaman Hapus Aplikasi tingkat Data.
Batal - Mengakhiri wizard tanpa menghapus instans DAC.
Menggunakan Wizard Hapus Aplikasi tingkat Data
Menghapus Halaman Aplikasi tingkat Data
Halaman ini melaporkan keberhasilan atau kegagalan operasi penghapusan.
Menghapus DAC - Melaporkan keberhasilan atau kegagalan setiap tindakan yang diambil untuk menghapus instans DAC. Tinjau informasi untuk menentukan keberhasilan atau kegagalan setiap tindakan. Setiap tindakan yang mengalami kesalahan akan memiliki tautan di kolom Hasil . Pilih tautan untuk melihat laporan kesalahan untuk tindakan tersebut.
Simpan Laporan - Pilih tombol ini untuk menyimpan laporan penghapusan ke file HTML. File melaporkan status setiap tindakan, termasuk semua kesalahan yang dihasilkan oleh salah satu tindakan. Folder default adalah folder SQL Server Management Studio\DAC Packages di folder Dokumen akun Windows Anda..
Selesai - Mengakhiri wizard.
Menggunakan Wizard Hapus Aplikasi tingkat Data
Menggunakan PowerShell
Buat objek SMO Server dan atur ke instans yang berisi DAC yang akan dihapus.
Buka objek ServerConnection dan sambungkan ke instans yang sama.
Gunakan
add_DacActionStarted
danadd_DacActionFinished
untuk berlangganan peristiwa peningkatan DAC.Tentukan DAC yang akan dihapus.
Gunakan salah satu dari tiga contoh, bergantung pada opsi penghapusan mana yang sesuai:
- Untuk menghapus pendaftaran DAC dan membiarkan database tetap utuh, gunakan metode .
Unmanage
- Untuk menghapus pendaftaran DAC dan melepaskan database, gunakan
Uninstall
metode dan tentukanDetachDatabase
. - Untuk menghapus pendaftaran DAC dan menghilangkan database, gunakan
Uninstall
metode dan tentukanDropDatabase
.
- Untuk menghapus pendaftaran DAC dan membiarkan database tetap utuh, gunakan metode .
Menghapus DAC dan meninggalkan database
Contoh berikut menghapus DAC bernama <myApplication>
menggunakan Unmanage
metode untuk menghapus DAC tetapi membiarkan database tetap utuh.
## Set a SMO Server object to the default instance on the local computer.
CD SQLSERVER:\SQL\localhost\DEFAULT
$server = Get-Item .
## Open a Common.ServerConnection to the same instance.
$serverConnection = New-Object Microsoft.SqlServer.Management.Common.ServerConnection($server.ConnectionContext.SqlConnectionObject)
$serverConnection.Connect()
$dacStore = New-Object Microsoft.SqlServer.Management.Dac.DacStore($serverConnection)
## Subscribe to the DAC delete events.
$dacStore.add_DacActionStarted({Write-Host `n`nStarting at $(Get-Date) :: $_.Description})
$dacStore.add_DacActionFinished({Write-Host Completed at $(Get-Date) :: $_.Description})
## Specify the DAC to delete.
$dacName = "<myApplication>"
## Only delete the DAC definition from msdb, the associated database remains active.
$dacStore.Unmanage($dacName)
Menghapus DAC dan melepaskan database
Contoh berikut menghapus DAC bernama <myApplication>
menggunakan Uninstall
metode untuk menghapus DAC dan melepaskan database.
## Set a SMO Server object to the default instance on the local computer.
CD SQLSERVER:\SQL\localhost\DEFAULT
$server = Get-Item .
## Open a Common.ServerConnection to the same instance.
$serverConnection = New-Object Microsoft.SqlServer.Management.Common.ServerConnection($server.ConnectionContext.SqlConnectionObject)
$serverConnection.Connect()
$dacStore = New-Object Microsoft.SqlServer.Management.Dac.DacStore($serverConnection)
## Subscribe to the DAC delete events.
$dacStore.add_DacActionStarted({Write-Host `n`nStarting at $(Get-Date) :: $_.Description})
$dacStore.add_DacActionFinished({Write-Host Completed at $(Get-Date) :: $_.Description})
## Specify the DAC to delete.
$dacName = "<myApplication>"
## Delete the DAC definition from msdb and detach the associated database.
$dacStore.Uninstall($dacName, [Microsoft.SqlServer.Management.Dac.DacUninstallMode]::DetachDatabase)
Menghapus DAC dan menghilangkan database
Contoh berikut menghapus DAC bernama <myApplication>
menggunakan Uninstall
metode untuk menghapus DAC dan menghilangkan database.
## Set a SMO Server object to the default instance on the local computer.
CD SQLSERVER:\SQL\localhost\DEFAULT
$server = Get-Item .
## Open a Common.ServerConnection to the same instance.
$serverConnection = New-Object Microsoft.SqlServer.Management.Common.ServerConnection($server.ConnectionContext.SqlConnectionObject)
$serverConnection.Connect()
$dacStore = New-Object Microsoft.SqlServer.Management.Dac.DacStore($serverConnection)
## Subscribe to the DAC delete events.
$dacStore.add_DacActionStarted({Write-Host `n`nStarting at $(Get-Date) :: $_.Description})
$dacStore.add_DacActionFinished({Write-Host Completed at $(Get-Date) :: $_.Description})
## Specify the DAC to delete.
$dacName = "<myApplication>"
## Delete the DAC definition from msdb and drop the associated database.
$dacStore.Uninstall($dacName, [Microsoft.SqlServer.Management.Dac.DacUninstallMode]::DropDatabase)
Lihat Juga
Aplikasi tingkat data
Aplikasi tingkat data
Menyebarkan Aplikasi tingkat Data
Mendaftarkan Database Sebagai DAC
Mencadangkan dan Memulihkan Database SQL Server
Pencopotan dan Lampirkan Database (SQL Server)
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk