gpt4 book ai didi

mysql - 定期更换正在运行的 MySQL 数据库

转载 作者:行者123 更新时间:2023-11-29 15:00:03 26 4
gpt4 key购买 nike

我有一个相当大的 MySQL 数据库,其中包含天气信息。该数据库大约有 350 万行,大小为 486 MB。

我每 6 小时就会以可导入的 mysql 转储文件的形式刷新此数据。导入数据需要超过 2 分钟,创建索引可能也需要相似的时间。

关于如何导入这些数据,同时保持数据库可用且不失去响应能力,有什么想法吗?我的第一个想法是两个人在同一个 MySQL 实例中有两个数据库。我将运行 DB1,并将数据加载到 DB2,然后切换。但是,我担心加载过程会使 DB1 无响应(或显着变慢)。

所以,我的下一个想法是两个有两个不同的 MySQL 实例在不同的端口上运行。当数据库实例 1 正在提供查询服务时,数据库实例 2 可以加载下一个数据集。然后在下一个查询时,代码切换到 DB2。

这似乎对我有用,但我想咨询一些过去尝试过类似事情的人,看看是否有我遗漏的“陷阱”。

想法?

最佳答案

有两个数据库,每次导入完成后在它们之间切换。

一个数据库上的负载不应导致另一数据库无响应。 486MB 并不算太大,无法容纳多次内存 - 我猜这取决于您是否在小型虚拟服务器中。

但即便如此,一台服务器上的两个 MySQL 实例与一个实例上的两个数据库相比,在性能上不应该有任何差异,只是两个实例实际上可能占用更多内存并且设置起来更复杂。

关于mysql - 定期更换正在运行的 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3473786/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com