Ketika seseorang mencoba untuk menyambungkan ke contoh SQL Server, kesalahan muncul:
Itu tidak mungkin menghasilkan konteks SSPI.
Kemarin kami mengalami pemadaman (tidak tahu bagaimana mengatakan ungkapan ini dalam bahasa Inggris) dan saya harus mematikan server kami.
Mencari jawaban, saya menemukan ini:
Masalah konektivitas SQL Server 2008: tidak dapat menghasilkan konteks SSPI
Tapi itu tidak membantu saya, karena mereka bekerja dengan baik sampai kemarin. Saya tidak ingin mengubah apa pun. Tetapi jika harus, saya akan mengubahnya.
Obs: Saya tidak bisa memulai ulang server sekarang.
Sunting: Karena saya jawaban saya, kami tidak memiliki kesalahan.
sql-server
sql-server-2008
authentication
errors
connectivity
SQL pembalap
sumber
sumber
gpupdate /force
. Lebih lanjut tentang subjek cantik ini di sini Tapi saya sangat merekomendasikan tugas ini untuk diserahkan kepada manajer server.Jawaban:
'Tidak dapat menghasilkan konteks SSPI' adalah kesalahan umum. Hal ini dapat disebabkan oleh banyak masalah, seperti kata sandi yang diuraikan, penyimpangan jam, izin akses Direktori Aktif, kegagalan untuk mendaftarkan SPN dan sebagainya dan seterusnya.
Tidak ada solusi untuk masalah ini. Satu-satunya 'solusi' adalah untuk menyelidiki penyebabnya, sesuai KB811889 dan / atau Mengatasi Masalah Kerberos Errors . Menerapkan satu solusi atau yang lain dari sumber daya Internet acak, tanpa memahami penyebabnya, mungkin atau mungkin tidak menyelesaikan masalah, mungkin atau mungkin tidak menyebabkan frustrasi, mungkin atau tidak dapat menyebabkan kerusakan yang tidak dapat dibatalkan.
sumber
Kami mengubah
SQL SERVICE user
ke yang "Domain Admin
".Saya telah melakukan beberapa penelitian untuk mengetahui mengapa ini terjadi. Dikatakan bahwa ketika Anda mematikan layanan, Anda memerlukan akun dengan hak istimewa untuk membuat SPN baru (ketika dihidupkan lagi). Jika Anda memulai layanan tanpa itu, itu akan ditampilkan di CANNOT GENERATE SSPI CONTEXT.
kami mengubah hak istimewa akun sistem kami.
Semoga ini bisa membantu seseorang.
sumber
Kami memiliki masalah ini setelah kami mengambil database dari PROD dan mengembalikannya dalam QA. Aplikasi kami memanggil tiga database pada tiga server dan selain itu tidak rumit.
Ternyata SPN palsu (Nama Pokok Layanan) menghalangi akun layanan di mana koneksi seharusnya sudah berjalan. Kami menemukan ini menggunakan Program Files> Microsoft Kerberos Config Manager.
Perbaikan jangka pendek adalah menggunakan SQL Server Configuration Manager dan mengubah koneksi SQL Server dan SQL Server Agent dari akun layanan ke 'LocalSystem' di bawah 'Use BuiltIn Account'.
sumber
Tidak dapat menghasilkan konteks SSPI dapat berarti hal itu. Ketika klien terhubung ke SQL server, ia menggunakan metode generasi yang mencakup jenis layanan (MsSQLsvr) Server FQDN dan port. Ini menggunakan DNS untuk menghasilkan nama server sehingga jika itu menyelesaikan nama salah karena CNAME atau file host dll generasi akan gagal. Ping server yang diinginkan dan lihat balasan apa yang Anda dapatkan. Jika bukan FQDN dari server SQL maka SPN akan dihasilkan secara tidak benar yang menyebabkan kesalahan ini.
sumber
Dalam beberapa situasi Anda akan mendapatkan kesalahan ini karena pengaturan SPN. Sebagai contoh jika Anda melakukan pengujian pemulihan bencana ke server baru Anda mungkin mendapatkan kesalahan SSPI saat terhubung ke SQL Server. Yang lebih aneh adalah bahwa Anda mungkin dapat terhubung menggunakan SQL Server Management Studio tetapi Anda tidak dapat terhubung melalui ODBC atau OLEDB. Mungkin ada solusi sementara yang mungkin akan memungkinkan Anda untuk sampai ke database.
Penanganan Masalah : Pada setiap komputer klien yang mencoba terhubung ke SQL Server, buat entri di setiap file host workstation. Mekanisme pasti yang digunakan untuk memperbaiki masalah ini belum dikonfirmasi tetapi mungkin penggunaannya mengesampingkan kebutuhan SPN.
Meskipun ini tidak dijamin akan diperbaiki untuk semua kasus, kemungkinan besar Anda akan kembali aktif. Ini seharusnya tidak dianggap perbaikan permanen. Anda harus menyelesaikan SPN atau masalah lain dalam situasi yang ideal. Namun, jika Anda mengalami masalah dengan mesin Windows lama yang menjalankan sistem operasi yang tidak didukung atau jika Anda hanya melakukan pembuktian konsep pengujian pemulihan bencana, ini akan membuat Anda berada di tempat yang Anda inginkan agar lampu tetap menyala atau produksi tetap hidup dan beroperasi.
sumber
Saya mengalami masalah ini dan telah diatasi dengan menghapus entri SPN di atribut akun komputer di AD untuk server
Temukan akun mesin di Pengguna dan Komputer AD (Tampilan lanjutan)
Kemudian hapus dua entri di servicePrincipalName untuk MSSQLSvc
sumber
Saya punya masalah serupa. Saya akhirnya harus menghapus entri dari informasi SPN pada akun komputer di ADSIEdit.
Setelah menghapus entri, saya memulai kembali layanan SQL dan mendaftarkan SPN dengan akun sumber daya domain yang saya buat. Saya kemudian dapat mengakses SQL Server dari jarak jauh.
sumber
Bagi saya solusinya adalah menjalankan SQL Studio sebagai pengguna domain dengan perintah ini:
runas / user: OtherDomain \ User SSMS.exe
sumber
Saya mengalami masalah ini baru-baru ini. Saya menjalankan sebagai akun NT SERVICE dan ketika saya beralih menggunakan akun layanan, saya tidak bisa lagi terhubung menggunakan SSMS dengan nama mesin atau FQDN. Saya bisa terhubung dengan alamat IP. Dengan beberapa penggalian saya menemukan bahwa SPN di Active Directory untuk contoh SQL terdaftar pada mesin. Setelah saya menghapus ini dan kemudian menambahkannya ke akun layanan, dan reboot mesin SQL, semuanya berfungsi sebagaimana mestinya. Senang memberikan detail lebih lanjut jika diperlukan.
sumber