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 koneksi pengguna 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 startup-m. 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 melalui baris perintah dan hanya mengizinkan koneksi melalui Editor Kueri SQL Server Management Studio.

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

Untuk memulihkan master database di SQL Server 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 bahwa:

  • 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. Menyambungkan 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 gunakan utilitas sqlcmd.

Saat menggunakan opsi , -m Anda dapat menambahkan nama aplikasi tertentu untuk membatasi koneksi hanya untuk yang memiliki nama aplikasi yang sama yang ditentukan dalam string koneksi. Misalnya, sqlcmd utilitas menggunakan SQLCMD sebagai nama aplikasi dalam string koneksinya. Jika Anda menentukan -mSQLCMD sebagai parameter startup, instans SQL Server dimulai dalam mode pengguna tunggal dan koneksi dari aplikasi selain sqlcmd ditolak. 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, Anda bisa menggunakan -mSSMSQueryEditor dan memasukkan App=SSMSQueryEditor pada tab Parameter Koneksi Tambahan di dialog Sambungkan ke Mesin Database .

Catatan

Nama aplikasi yang ditentukan dengan opsi -m startup mungkin peka terhadap penggunaan huruf besar.

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).

Kelompok 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 berpindah ke simpul yang berbeda jika sumber daya dikonfigurasi untuk mempengaruhi 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 saat ini dari grup ini, jalankan perintah berikut dari jendela command prompt:

    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 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.