Mysql Rails和后端多数据库

Mysql Rails和后端多数据库,mysql,ruby-on-rails,database,performance,Mysql,Ruby On Rails,Database,Performance,我目前有一个Rails应用程序,它配置了一个MySQL数据库 问题是数据库大小增长非常快。大约每3个月记录一次~3500000,大小为1GB 尽管应用了适当的索引,但直到最近,对数据库的查询开始超时,该应用程序似乎仍按预期工作 我真的在这里扩展MySQL的极限了吗?有没有什么Rails插件可以让我的同一代码与备份中的多个数据库一起工作,这样一台DB服务器就不会有负担 在这种情况下,您会怎么做?您可以尝试使用数据库这里描述的大小对于一个mysql实例来说绝对不是太大。几百万行和几个G的总大小并不是

我目前有一个Rails应用程序,它配置了一个
MySQL
数据库

问题是数据库大小增长非常快。大约每3个月记录一次
~3500000
,大小为
1GB

尽管应用了适当的索引,但直到最近,对数据库的查询开始超时,该应用程序似乎仍按预期工作

我真的在这里扩展MySQL的极限了吗?有没有什么Rails插件可以让我的同一代码与备份中的多个数据库一起工作,这样一台DB服务器就不会有负担


在这种情况下,您会怎么做?

您可以尝试使用数据库

这里描述的大小对于一个mysql实例来说绝对不是太大。几百万行和几个G的总大小并不是那么糟糕。通过简单地调整配置,您可以获得很多性能提升。你在使用Innodb吗?如果是这样,请仔细查看my.cnf文件,并密切关注innodb_buffer_pool_大小。另外,您的访问模式是什么?多读少写?多写几读?二者都您可以添加像memcached这样的缓存层。在多次读取的情况下,可以添加复制从属。简言之,在您必须切分数据库之前,可能会有一些跑道供您使用

对mysql innodb进行分区有些限制,您不能使用分区表中的外键,也不能从其他表中引用分区表。