我是rails的新手,我已经用activerecord构建了一个连接到mysql的应用程序。我已设置读取的副本 master
节点。问题是当我的 slave
变成 master
,应用程序中出现以下错误:
MySQL server is running with the --read-only option so it cannot execute this statement
我想这是可以接受的。
但我的应用程序一直失败,直到我重新启动应用程序才恢复。是否有任何acitverecord配置或mysql连接属性可用于从该场景中恢复?
我在我的电脑里使用了以下配置 database.yml
.
adapter: mysql2
encoding: utf8
url: <'DATABASE_URL'>
pool: 10
database: <'DATABASE_NAME'>
username: <'DATABASE_USER'>
password: <'DATABASE_PASS'>
reconnect: true
我是否可以添加任何配置来处理故障转移?有什么处理这种情况的建议吗?
提前谢谢。
1条答案
按热度按时间bvpmtnay1#
我修正了这个问题后,这个博客。把它放在这里作为参考,以便任何人都可以使用它。
根据博客,你将覆盖
ActiveRecord::ConnectionAdapters::ConnectionManagement
适配器并编写自己的连接处理,以防出现错误。