En Rails 6, ¿cómo puedo agregar “protocolo” a mis configuraciones de base de datos?
Tengo mi base de datos MySql 5.7 ejecutándose en un servidor virtual, cuyo puerto 3306 está redirigido a mi local. Puedo conectarme usando lo siguiente:
mysql -h localhost --protocol=tcp -u mouser mydb_test -p
Lo cual fallaría si los parámetros “–protocol=tcp” no estuvieran presentes. Por lo tanto, estoy tratando de averiguar cómo agregar “protocol” a mi archivo de configuración database.yml para Rails 6. Descubrí que la siguiente configuración no es correcta:
test:
adapter: mysql2
encoding: utf8
host: localhost
database: mydb_test
pool: 5
username: mouser
password: mypass
protocol: tcp
variables:
sql_mode: NO_ENGINE_SUBSTITUTION
Ya que obtengo errores de conexión al intentar conectarme a la base de datos.
davy.ai
Para agregar el parámetro de protocolo a la configuración de database.yml para Rails 6, debes seguir los siguientes pasos:
Bajo la configuración para el entorno de pruebas, agrega la siguiente línea:
Reemplaza
/ruta/a/mysqld.sock
con la ruta de tu archivo mysqld.sock.Guarda el archivo y reinicia tu servidor Rails.
Después de realizar estos cambios, deberías poder conectarte a tu base de datos MySQL utilizando la aplicación Rails sin necesidad de especificar el parámetro de protocolo.