跨多个服务器的MySQL数据库


11

好吧,真的不知道如何问我要寻找的东西,以找出可能是为什么我的阅读和研究否则对每个人的言语毫无用处的原因。因此,我目前只有一个MySQL数据库,而且我知道数据迟早会堆积起来,这台服务器上的空间将用完。因此,在此之前,我想先整理一下内容,然后将数据库分布在多台计算机上,一台用于负载平衡,二台用于纯存储。

所以我的问题是,这如何工作?也许我在这里也想一维,但是我无法弄清楚它是如何工作的,是一个DB随着数据的增长而溢出到下一台机器上,还是下一台机器上,还是每个DB都具有相同的架构,无论哪种方式,我都无法想象,更不用说进入逻辑来证明当前正在研究的内容。因为当数据对于一台机器来说非常多时,我们不想碰壁并全力以赴。

那么,我必须阅读,研究,方法,实践等什么,才能使自己步入正确的轨道?


这帮助了我,当涉及跨多台机器的(my)sql服务时,我是一个新手。为了进入这个领域,我一直很难找到正确的问题。+1问题和答案。;)
James T Snell 2014年

Answers:


8

您确实可以做到,“获得所需的MySQL群集

特别是一项功能-“ 自动分片 ”-会将您的数据分散到多台计算机上。如果在数据库运行时需要更多容量,则可以使用“联机扩展”来添加新节点。很酷 您可以在此处下载。

但是,您可以考虑解决一些其他问题,这可能更容易实现:

获取更大的硬盘!

听起来似乎很明显,但是如果您可以放心地说一个xxxGb硬盘可以使用数年,那么值得尝试。您可以拍摄驱动器的映像并将其安装在新驱动器上,也可以将其安装为其他驱动器,然后 MySQL数据文件移至新驱动器。

将表拆分为多个数据库。

在多个数据库中拆分表,然后可以将其存储在多个驱动器中。Windows Azure在其数据库上有大小限制,Microsoft建议使用此方法。它还可以稍微提高性能。

您可以存档数据吗?

您是否可以将大表归档到另一个驱动器上?确实需要数据吗?如果它具有历史意义并且仅作为参考,您是否可以设置一个归档过程,将其推入另一个驱动器上的文件中,或者推入另一个数据库中指向另一个驱动器上的数据文件的存档表中?


该系统打算用于生产系统,可以在一段时间内完成一些存档,但是通常,由几个表定期调用的预期数据将很容易达到几TB。尽管“聚类”功能有很大帮助,但我不得不对此主题进行大量阅读,谢谢。不幸的是,更大的高清硬盘已经面世,对我而言,单点故障的大量数据将带来极大风险。
克里斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.