ruby-on-rails – Rails中的database.yml重新连接设置为true或false

database.yml中,Rails 3和4上重新连接的认设置为false.什么是共同的设置,在什么情况下我们应该将其设置为真?谢谢.

解决方法

你可以设置为true.此选项在Rails 2.3中引入

MySQL在其连接中支持重新连接标志 – 如果设置为true,则客户端将尝试重新连接到服务器,然后在连接丢失的情况下放弃.您现在可以为database.yml中的MysqL连接设置reconnect = true,以从Rails应用程序中获取此行为.

Rails团队将此选项认设置为“false”,因为他们不想更改现有应用程序的行为.

但是如果我们设置reconnect = true会有一些副作用.它不是事务安全的.事实上,MysqL documentation明确声明自动重新连接功能会影响事务.

回滚任何活动事务并重置自动提交模式.

未写入处理此问题的应用程序可能很容易破解.该文档还列出了由自动重新连接功能引起的许多其他副作用,所有这些都可能导致未写入的应用程序预期行为无法正常运行或失败.

校验:

rails 2.3 release notes

mysql-reconnect-value-doesnt-stick

see this StackOverflow question

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...