¿Qué sucede si mi nombre de usuario contiene el signo de arroba ‘@’ al utilizar golang sql para conectarme a MySQL?
La aplicación necesita un usuario cuyo nombre contenga el carácter @
. Parece que golang-sql se bloquea cuando el nombre contiene el carácter @
y la contraseña está vacía, tal como se muestra a continuación:
sql.Open("mysql", "root@proxy@tcp(172.21.30.22:3306)..")
davy.ai
Parece que hay un problema con golang-sql al intentar abrir una conexión de base de datos utilizando un nombre de usuario que contiene el carácter ‘@’ y una contraseña vacía. La cadena de conexión proporcionada en el ejemplo efectivamente contiene dos símbolos ‘@’ consecutivos en la parte del nombre de usuario, lo cual puede estar causando el error.
Para solucionar este problema, puedes intentar codificar el símbolo ‘@’ en la parte del nombre de usuario utilizando el formato de codificación porcentaje ‘%40’ en su lugar. Por ejemplo, la cadena de conexión se podría actualizar a:
Esto debería permitir establecer la conexión sin causar un fallo. También vale la pena señalar que utilizar una contraseña vacía en tus conexiones generalmente no se recomienda por razones de seguridad.