Rumah > pembangunan bahagian belakang > Golang > Mengapa Program My Go Tidak Boleh Bersambung ke SQL Server?

Mengapa Program My Go Tidak Boleh Bersambung ke SQL Server?

Linda Hamilton
Lepaskan: 2024-11-24 13:19:13
asal
441 orang telah melayarinya

Why Can't My Go Program Connect to SQL Server?

Pergi dengan SQL Server: Tidak Dapat Bersambung Berjaya

Masalah:

Apabila menggunakan Go dengan pemacu SQL Server untuk menyambung ke pangkalan data, ralat berlaku:

login failed for user 'sakhaloo'
Salin selepas log masuk

Selain itu, percubaan untuk membuka pangkalan data menggunakan SQL Server Management Studio gagal dengan ralat:

Error:233: 
A connection was successfully established with the server, but then an
error occurred during the login process. (provider: Shared Memory
Provider, error: 0-no process is on the other end of the
pipe.)(Microsoft SQL Server,)
Salin selepas log masuk

Punca:

Isu ini berpunca daripada gabungan faktor:

  • Tata SQL Server tidak dikonfigurasikan dengan betul untuk Sambungan TCP.
  • Program Go cuba menggunakan Pengesahan Windows tanpa menyatakan domain atau pengguna.
  • Pengguna SQL Server tidak mempunyai kebenaran yang diperlukan.

Penyelesaian:

  1. Konfigurasikan TCP Sambungan untuk Pelayan SQL:
  • Buka Pengurus Konfigurasi Pelayan SQL.
  • Kembangkan Konfigurasi Rangkaian > Protokol untuk MSSQLSERVER.
  • Dayakan TCP/IP.
  • Mulakan semula perkhidmatan SQL Server.
  1. Buat Pengguna SQL Server dengan Kebenaran:
  • Gunakan SQL Studio Pengurusan Pelayan untuk mencipta pengguna SQL Server dengan kebenaran yang diperlukan.
  • Pastikan pengguna mempunyai keistimewaan yang mencukupi untuk mencipta dan mengubah suai pangkalan data.
  1. Nyatakan Pengguna SQL Server dalam Program Go:
  • Dalam program Go, nyatakan nama pengguna dan kata laluan SQL Server dalam rentetan sambungan.
  • Jika Pengesahan Windows dikehendaki, biarkan nama pengguna dan kata laluan kosong, tetapi pastikan contoh SQL Server dikonfigurasikan untuk Kerberos pengesahan.

Penyelesaian Kemas Kini untuk Windows Dipercayai Pengesahan:

  • Pada Windows, jika id pengguna kosong atau tiada, Single-Sign-On (sambungan dipercayai) digunakan.
  • Untuk menggunakan Trusted Pengesahan Windows, pastikan perkara berikut dalam program Go:

    condb, errdb := sql.Open("mssql", "server=servernameorip;user>
    Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Program My Go Tidak Boleh Bersambung ke SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan