【发布时间】:2011-12-12 20:43:02
【问题描述】:
我很难在项目中走正确的道路。
我是一个预算紧张的单人乐队。 2台专用服务器 MySQL 5 / php5
我正在使用服务器 1 来消耗来自各种提要的大量数据。服务器/软件 24/7 全天候运行,生成一个巨大的数据库。
服务器 2 - 保存一份副本 带有网络前端的数据库
我没有任何 MySQL 复制经验。我一直在研究,据我所知,奴隶会在主人之后立即更新。
我想要一个非常快速的网站,所以这就是为什么在服务器 1 上进行处理,而服务器 2 只是选择数据。
如果 MySQL 复制正在模仿服务器 1,那么这肯定会降低服务器 2 的速度并产生与预期相反的效果。
我认为最适合这种情况的方法是编写一个脚本来自动化该过程。
服务器 2 有 2 个数据库。一份供现场处理。
脚本确定哪个数据库处于活动状态,然后使用另一个数据库。
它会删除其中的所有表格。 该脚本从服务器 1 转储数据库。 将其安装在服务器 2 新清空的数据库上。 该脚本更改网站配置文件以利用新数据库。
这个过程可以一遍又一遍地重复。
虽然数据库安装会很大,但它可能会在晚上完全安装,应该意味着没有停机时间。
这比做 MySQL 复制好吗? 我会欢迎建议。
【问题讨论】:
-
最好通过添加索引、删除锁和使用 server1 来微调性能,而不是通过复制方式。
-
加载大型转储仍然需要很长时间,而且在转储加载时无法访问数据库。
-
@Vivek 什么?你能错得更大吗?...
标签: php mysql replication