Menurut dokumentasi Google, mewujudkan sambungan pangkalan data antara Go dan Google Cloud SQL menggunakan go-sql-driver dan SSL haruslah mudah. Walau bagaimanapun, pengguna mungkin menghadapi ralat sijil x509 yang membingungkan.
Mesej ralat menunjukkan bahawa pengguna menyambung dengan SSL. Untuk membetulkan isu ini, pastikan sifat ServerName ditetapkan dalam panggilan RegisterTLSConfig yang dibuat dengan pemacu mysql. Konfigurasi ini mesti dilakukan bersama-sama dengan menentukan project-id:instance-name dalam fungsi sql.Open().
Untuk menangani isu ini, ubah suai konfigurasi TLS anda kepada sertakan tetapan Nama Pelayan tersuai, seperti yang ditunjukkan di bawah:
<code class="go">mysql.RegisterTLSConfig("custom", &tls.Config{ RootCAs: rootCertPool, Certificates: clientCert, ServerName: "projectName:instanceName", })</code>
Seterusnya, tambahkan rentetan berikut pada rentetan sambungan pangkalan data anda:
<code class="go">?tls=nameOfYourCustomTLSConfig</code>
Sebagai contoh:
<code class="go">db, err := sql.Open("mysql", "user@cloudsql(project-id:instance-name)/dbname?tls=custom")</code>
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat Sijil SSL dalam Go Apabila Menyambung ke Google Cloud SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!