启动Rails应用时出现MYSQL_OPT_RECONNECT弃用警告,求解决方案
修复MYSQL_OPT_RECONNECT弃用警告的方案
问题原因
你的mysql2 gem 0.5.5版本在连接MySQL 8.1时,仍在调用MySQL已弃用的MYSQL_OPT_RECONNECT选项,因此触发警告。
解决措施
方案1:升级mysql2 gem到兼容版本
- 修改项目根目录下的
Gemfile,将mysql2的版本指定为~> 0.5.6或更高的0.5.x稳定版(适配Rails 6.1.x):gem 'mysql2', '~> 0.5.6' - 执行命令更新gem:
bundle update mysql2 - 重启Rails应用,警告即可消除。
方案2:手动禁用重连选项(临时方案)
如果暂时无法升级gem,可通过配置关闭该选项:
- 打开
config/database.yml,在对应环境的数据库配置中添加reconnect: false:development: adapter: mysql2 database: 你的数据库名 username: 你的用户名 password: 你的密码 host: localhost reconnect: false - 重启应用后,mysql2 gem将不再使用
MYSQL_OPT_RECONNECT,警告会消失。
补充说明
MySQL 8.0+官方已弃用MYSQL_OPT_RECONNECT,Rails本身具备应用层面的自动重连逻辑,禁用该配置不会影响应用的连接稳定性。
内容的提问来源于stack exchange,提问作者jthomp
相关产品推荐
相关产品推荐

