Mengatur database ke mode pengguna tunggal
Berlaku untuk: SQL Server
Artikel ini menjelaskan cara mengatur database yang ditentukan pengguna ke mode pengguna tunggal di SQL Server dengan menggunakan SQL Server Management Studio atau Transact-SQL. Mode pengguna tunggal menentukan bahwa hanya satu pengguna sekaligus yang dapat mengakses database dan umumnya digunakan untuk tindakan pemeliharaan.
Batasan
Jika pengguna lain tersambung ke database pada saat Anda mengatur database ke mode pengguna tunggal, koneksi mereka ke database akan ditutup tanpa peringatan.
Database tetap dalam mode pengguna tunggal bahkan setelah pengguna yang mengatur opsi terputus. Pada saat itu, pengguna yang berbeda, tetapi hanya satu, yang dapat tersambung ke database.
Prasyarat
- Sebelum Anda mengatur database ke SINGLE_USER, verifikasi bahwa opsi AUTO_UPDATE_STATISTICS_ASYNC diatur ke
OFF
. Ketika opsi ini diatur keON
, utas latar belakang yang digunakan untuk memperbarui statistik mengambil koneksi terhadap database, dan Anda tidak akan dapat mengakses database dalam mode pengguna tunggal. Untuk informasi selengkapnya, lihat MENGUBAH Opsi SET DATABASE (Transact-SQL).
Izin
Memerlukan izin UBAH pada database.
Menggunakan SQL Server Management Studio
Untuk mengatur database ke mode pengguna tunggal:
Di Object Explorer, sambungkan ke instans Mesin Database SQL Server, lalu perluas instans tersebut.
Klik kanan database untuk diubah, lalu pilih Properti.
Dalam kotak dialog Properti Database, pilih halaman Opsi .
Dari opsi Batasi Akses , pilih Tunggal.
Jika pengguna lain tersambung ke database, pesan Buka Koneksi akan muncul. Untuk mengubah properti dan menutup semua koneksi lainnya, pilih Ya.
Anda juga bisa mengatur database ke Akses ganda atau Terbatas dengan menggunakan prosedur ini. Untuk informasi selengkapnya tentang opsi Batasi Akses, lihat Properti Database (Halaman Opsi).
Menggunakan Transact-SQL
Untuk mengatur database ke mode pengguna tunggal:
Sambungkan ke Mesin Database.
Dari bilah Standar, pilih Kueri Baru.
Salin dan tempel contoh berikut ke dalam jendela kueri dan pilih Jalankan. Contoh ini mengatur database ke
SINGLE_USER
mode untuk mendapatkan akses eksklusif. Contoh kemudian mengatur statusAdventureWorks2022
database keREAD_ONLY
dan mengembalikan akses ke database ke semua pengguna.
Peringatan
Untuk mendapatkan akses eksklusif dengan cepat, sampel kode menggunakan opsi WITH ROLLBACK IMMEDIATE
penghentian . Ini akan menyebabkan semua transaksi yang tidak lengkap digulung balik dan koneksi lain ke AdventureWorks2022
database segera terputus.
USE master;
GO
ALTER DATABASE AdventureWorks2022
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
GO
ALTER DATABASE AdventureWorks2022
SET READ_ONLY;
GO
ALTER DATABASE AdventureWorks2022
SET MULTI_USER;
GO