Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk: SQL Server
Detail
| Atribut | Nilai |
|---|---|
| Nama Produk | SQL Server |
| ID Peristiwa | 18482 |
| Sumber Kejadian | MSSQLSERVER |
| Komponen | SQLEngine |
| Nama Simbolis | REMLOGIN_INVALID_SITE |
| Teks Pesan | Tidak dapat tersambung ke server '%.ls' karena '%.ls' tidak didefinisikan sebagai server jarak jauh. Verifikasi bahwa Anda telah menentukan nama server yang benar. %.*ls |
Penjelasan
Kesalahan ini terjadi ketika Anda mencoba menjalankan panggilan prosedur jarak jauh (RPC) dari satu server ke server lain (misalnya, dengan menjalankan prosedur tersimpan di komputer jarak jauh dengan pernyataan seperti EXEC SERV_REMOTE.pubs..byroyalty). Pesan kesalahan yang mirip dengan berikut ini dilaporkan kepada pengguna
Kesalahan 18482: Tidak dapat tersambung ke server <SERV_REMOTE> karena <SERV_REMOTE> tidak didefinisikan sebagai server jarak jauh. Verifikasi bahwa Anda telah menentukan nama server yang benar.
Penyebab
Kesalahan ini terjadi ketika SQL Server tidak dapat menjalankan panggilan prosedur jarak jauh. Ini dapat disebabkan oleh server lokal yang dikonfigurasi dengan tidak benar. Untuk melakukan panggilan prosedur jarak jauh, SQL Server terlebih dahulu menentukan siapa server lokal dengan mencari nama server dengan srvid = 0 di sysservers. Jika entri dengan srvid = 0 tidak ditemukan di sysservers, atau jika nama server dengan srvid = 0 milik nama server yang berbeda dari nama komputer Windows lokal, Anda akan menerima kesalahan.
Tindakan pengguna
Untuk menentukan apakah server lokal dikonfigurasi dengan benar, periksa srvstatus kolom di master.. sysservers. Nilai ini harus 0 untuk server lokal.
Misalnya, server lokal Anda diberi nama SERV_LOCAL, server jarak jauh diberi nama SERV_REMOTE, dan sysserver berisi informasi berikut:
| srvid | srvstatus | srvname | srvname |
|---|---|---|---|
| 1 | 2 | SERV_LOCAL | SERV_LOCAL |
| 2 | 1 | SERV_REMOTE | SERV_REMOTE |
Dalam output sebelumnya, SERV_LOCAL adalah server lokal, tetapi memiliki srvid 1; seharusnya 0. Untuk memperbaikinya, ikuti langkah-langkah berikut:
- Jalankan
sp_dropserverlocal_server_name, droplogin (dalam contoh ini, Anda akan menjalankansp_dropserver SERV_LOCAL, droplogins). - Jalankan
sp_addserverlocal_server_name, LOCAL (dalam contoh ini, Anda akan menjalankansp_addserver SERV_LOCAL, LOCAL). - Hentikan dan mulai ulang SQL Server.
Setelah menjalankan langkah-langkah tersebut, tabel sysservers akan terlihat seperti berikut ini:
| srvid | srvstatus | srvname | srvname |
|---|---|---|---|
| 0 | 0 | SERV_LOCAL | SERV_LOCAL |
| 2 | 1 | SERV_REMOTE | SERV_REMOTE |
Catatan
ID Server (srvid) harus 0 untuk server lokal.
Mungkin ada beberapa kasus di mana entri dalam tabel sysservers terlihat benar, tetapi ketika Anda menjalankan select @@servername, entri mengembalikan NULL. Dalam skenario ini, Anda masih harus menjalankan melalui Langkah 1 hingga 3 yang tercantum di atas untuk memperbaiki masalah.
Informasi selengkapnya
Anda mungkin menerima pesan kesalahan ini saat menginstal replikasi karena proses penginstalan melakukan panggilan prosedur jarak jauh antara server yang terlibat dalam replikasi.