Bagikan melalui


Mode pengguna tunggal untuk SQL Server

Berlaku untuk: SQL Server

Artikel ini menyediakan informasi dan langkah-langkah untuk memulai instans SQL Server Anda dalam mode pengguna tunggal, yang hanya memungkinkan satu pengguna untuk terhubung ke instans.

Memulai instans dalam mode pengguna tunggal

Memulai SQL Server dalam mode pengguna tunggal memungkinkan setiap anggota grup Administrator lokal komputer untuk terhubung ke instans SQL Server sebagai anggota peran server tetap sysadmin . Untuk informasi selengkapnya, lihat Menyambungkan ke SQL Server saat administrator sistem dikunci.

Dalam keadaan tertentu, Anda mungkin harus memulai instans SQL Server dalam mode pengguna tunggal dengan menggunakan opsi -mstartup . Misalnya, Anda mungkin ingin mengubah opsi konfigurasi server atau memulihkan database yang rusak master atau database sistem lainnya. Kedua tindakan memerlukan memulai instans SQL Server dalam mode pengguna tunggal.

Contoh berikut memulai instans SQL Server dalam mode pengguna tunggal dan hanya mengizinkan koneksi melalui SQL Server Management Studio Editor Kueri.

net start "SQL Server (MSSQLSERVER)" /m"Microsoft SQL Server Management Studio - Query"

Untuk memulihkan master database di Linux dalam mode pengguna tunggal, lihat Memulihkan database master di Linux dalam mode pengguna tunggal.

Pertimbangan umum

Saat Anda memulai instans SQL Server dalam mode pengguna tunggal, perhatikan hal berikut:

  • Hanya satu pengguna yang dapat tersambung ke server.

  • Proses CHECKPOINT tidak dijalankan. Secara default, ini dijalankan secara otomatis saat startup.

Catatan

Hentikan layanan SQL Server Agent sebelum menyambungkan ke instans SQL Server dalam mode pengguna tunggal; jika tidak, layanan SQL Server Agent menggunakan koneksi, sehingga memblokirnya.

Saat Anda memulai instans SQL Server dalam mode pengguna tunggal, SQL Server Management Studio dapat tersambung ke SQL Server. Object Explorer di Management Studio mungkin gagal karena memerlukan lebih dari satu koneksi untuk beberapa operasi. Untuk mengelola SQL Server dalam mode pengguna tunggal, jalankan pernyataan Transact-SQL dengan menyambungkan melalui Editor Kueri di Management Studio atau Azure Data Studio, atau gunakan utilitas sqlcmd.

Saat menggunakan -m opsi dengan SQLCMD atau Management Studio, Anda dapat membatasi koneksi ke aplikasi klien tertentu.

Catatan

Di Linux, SQLCMD harus dikapitalisasi seperti yang ditunjukkan.

Misalnya, -m"SQLCMD" membatasi koneksi ke satu koneksi dan koneksi tersebut harus mengidentifikasi dirinya sebagai program klien sqlcmd . Gunakan opsi ini saat Anda memulai SQL Server dalam mode pengguna tunggal dan aplikasi klien yang tidak diketahui mengambil satu-satunya koneksi yang tersedia. Untuk menyambungkan melalui Editor Kueri di Management Studio, gunakan -m"Microsoft SQL Server Management Studio - Query".

Penting

Jangan gunakan opsi ini sebagai fitur keamanan. Aplikasi klien menyediakan nama aplikasi klien, dan dapat memberikan nama palsu sebagai bagian dari string koneksi.

Pertimbangan AlwaysOn

Ada pertimbangan tambahan saat menggunakan mode server tunggal untuk instans SQL Server yang dikonfigurasi sebagai instans kluster failover AlwaysOn (FCI), atau database Anda adalah bagian dari grup ketersediaan AlwaysOn (AG).

Grup ketersediaan

Startup grup ketersediaan AlwaysOn dan database dalam grup dilewati saat SQL Server dimulai dalam mode pengguna tunggal. Jika Anda perlu memecahkan masalah dengan database yang memerlukan memulai SQL Server dalam mode pengguna tunggal, dan database juga merupakan bagian dari grup ketersediaan, Anda harus menghapus database dari grup ketersediaan sebelum memulai SQL Server dalam mode pengguna tunggal sehingga database online.

Instans kluster failover

Untuk penginstalan SQL Server di lingkungan berkluster, ketika SQL Server dimulai dalam mode pengguna tunggal, dll sumber daya kluster menggunakan koneksi yang tersedia sehingga memblokir koneksi lain ke server. Ketika SQL Server dalam status ini, jika Anda mencoba membawa sumber daya SQL Server Agent secara online, sumber daya SQL mungkin gagal ke simpul yang berbeda jika sumber daya dikonfigurasi untuk memengaruhi grup.

Untuk mengatasi masalah, gunakan prosedur berikut:

  1. -m Hapus parameter startup dari Properti Tingkat Lanjut SQL Server.

  2. Ambil sumber daya SQL Server offline.

  3. Dari simpul pemilik grup ini saat ini, keluarkan perintah berikut dari prompt perintah:

    net start MSSQLSERVER /m
    
  4. Verifikasi dari administrator kluster atau konsol manajemen kluster failover bahwa sumber daya SQL Server masih offline.

  5. Sambungkan ke SQL Server sekarang menggunakan perintah berikut dan lakukan operasi yang diperlukan: SQLCMD -E -S<servername>.

  6. Setelah operasi selesai, tutup prompt perintah dan bawa kembali SQL dan sumber daya lainnya secara online melalui administrator kluster.