PRB: "Pemecahan masalah yatim piatu pengguna" topik di buku Online adalah tidak

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 274188 - Melihat produk di mana artikel ini berlaku.
Perbesar semua | Perkecil semua

Pada Halaman ini

GEJALA

Ketika Anda memulihkan database backup ke server lain, Anda mungkin mengalami masalah dengan pengguna yatim piatu. The Pemecahan masalah yatim pengguna' topik dalam SQL Server buku Online tidak menjelaskan langkah-langkah yang tepat untuk memecahkan masalah ini.

Artikel ini menjelaskan bagaimana Anda dapat memecahkan masalah yatim pengguna.

STATUS

Microsoft telah mengkonfirmasi bahwa ini merupakan masalah dalam produk Microsoft yang didaftar pada awal artikel ini.

INFORMASI LEBIH LANJUT

Meskipun istilah login dan pengguna sering digunakan secara bergantian, mereka sangat berbeda. Login digunakan untuk otentikasi pengguna dan account pengguna database yang digunakan untuk database access dan izin validasi. Login terkait ke pengguna dengan pengidentifikasi keamanan (SID). Login diperlukan untuk mengakses server SQL Server. Proses verifikasi bahwa login tertentu sah disebut "otentikasi". Login ini harus dikaitkan ke SQL Server database pengguna. Anda menggunakan account pengguna untuk mengontrol kegiatan yang dilakukan dalam database. Jika tidak ada account pengguna yang ada di database untuk login tertentu, pengguna yang menggunakan login yang tidak dapat mengakses database meskipun pengguna mungkin dapat menyambung ke server SQL Server. Satu pengecualian untuk situasi ini adalah ketika database berisi account pengguna "tamu". Login yang tidak memiliki account pengguna terkait dipetakan untuk pengguna tamu. Sebaliknya, jika ada database pengguna tetapi tidak login yang terkait, pengguna ini tidak dapat login ke server SQL Server.

Ketika database dikembalikan ke server yang berbeda ini berisi serangkaian pengguna dan izin tapi tidak dapat login setiap sesuai atau login mungkin tidak terkait dengan pengguna yang sama. Kondisi ini dikenal sebagai memiliki "yatim pengguna."

Pemecahan masalah pengguna yatim

Ketika Anda memulihkan database backup ke server lain, Anda mungkin mengalami masalah dengan pengguna yatim piatu. Skenario berikut menggambarkan masalah dan menunjukkan cara untuk mengatasinya.
  1. Menambahkan sebuah login untuk master database, dan menentukan standar database sebagai Northwind:
    Use master go sp_addlogin 'test', 'password', 'Northwind'
    						
  2. Memberikan akses kepada pengguna baru saja dibuat:
    Use Northwind go sp_grantdbaccess 'test'
    						
  3. Backup database.
    BACKUP DATABASE Northwind
    TO DISK = 'C:\MSSQL\BACKUP\Northwind.bak'
    						
  4. Memulihkan database server SQL Server yang berbeda:
    RESTORE DATABASE Northwind
    FROM DISK = 'C:\MSSQL\BACKUP\Northwind.bak'
    						
    Database dipulihkan berisi pengguna bernama "Uji" tanpa login sesuai, yang mengakibatkan "test" menjadi yatim piatu.
  5. Sekarang, untuk mendeteksi yatim pengguna, jalankan kode ini:
    Use Northwind go sp_change_users_login 'report'
    						
    Output daftar semua login, yang memiliki ketidaksesuaian antara entri di sysusers Tabel sistem, database Northwind, dan sysxlogins sistem tabel dalam master database.

Langkah-langkah untuk menyelesaikan yatim pengguna

  1. Jalankan perintah berikut untuk pengguna yatim piatu dari langkah sebelumnya:
    Use Northwind
    go
    sp_change_users_login 'update_one', 'test', 'test'
    						
    Ini relinks server login "test" dengan Northwind database pengguna "tes". The sp_change_users_login prosedur yang tersimpan dapat juga melakukan update dari semua pengguna yatim dengan parameter "auto_fix" tetapi ini tidak dianjurkan karena SQL Server mencoba untuk mencocokkan login dan pengguna dengan nama. Untuk kebanyakan kasus ini bekerja; Namun, jika login salah terkait dengan pengguna, pengguna mungkin memiliki perizinan tak benar.
  2. Setelah Anda menjalankan kode pada langkah sebelumnya, pengguna dapat mengakses database. Pengguna kemudian dapat mengubah password dengan sp_password disimpan prosedur:
    Use master 
    go
    sp_password NULL, 'ok', 'test'
    						
    Prosedur ini disimpan tidak dapat digunakan untuk Microsoft Windows NT keamanan account. Pengguna yang menghubungkan ke server SQL Server melalui account jaringan Windows NT yang dikonfirmasi oleh Windows NT; oleh karena itu, password mereka hanya akan berubah dalam Windows NT.

    Hanya anggota dari peran sysadmin dapat mengubah password untuk login pengguna lain.

REFERENSI

Untuk informasi tambahan tentang cara memecahkan masalah izin ketika database pindah antara server, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
240872 INF: Bagaimana untuk memecahkan izin masalah ketika Database adalah pindah antara SQL Server

Properti

ID Artikel: 274188 - Kajian Terakhir: 22 September 2011 - Revisi: 2.0
Berlaku bagi:
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2000 Standard Edition
Kata kunci: 
kbcodesnippet kbpending kbprb kbmt KB274188 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:274188

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com