2014-11-23 139 views
1

我即将将网站从一个服务提供商迁移到另一个服务提供商。 之前的迁移由托管公司执行,这导致用户数据/帖子/注册发布到2个不同服务器的相当大的问题,这取决于他们使用哪个DNS服务器。 之后合并数据库非常困难,因为在两个数据库上,自动增量值已经移到了合并2个数据库的时候,主键/自动增量值重叠,导致该行不被导入/插入,或者行覆盖前一个。迁移网站 - 在迁移期间保持数据库同步

是否有办法将...到达旧服务器的用户重定向到新服务器以避免数据库不同步。

是否有任何技巧/技巧我可以用来避免这种情况再次发生?

+0

嘿,如果我从一台服务器迁移到另一台服务器,我让新的连接到旧的数据库为2天,以便这两个工作在同一个数据库,同时正在进行DNS更改。 – tkausl 2014-11-25 21:48:25

+0

我想到了类似的东西。我想到的是......好吧,只需将用户从旧服务器重定向到新服务器,即可使用新服务器IP(但不知道我是否可以这样做)。 如果我设置mysql主机名为www.myserver.com,那么..不会得到分裂的结果解决该网址的MySQL?使用IP是否安全? 我知道我的问题很混乱,但我不是一个真正的服务器人:) – 2014-11-25 22:47:59

回答

1

设置两台服务器并进行测试以确保它们都可以工作。

在新服务器(一个你切换到)代理的所有请求回旧服务器Apache的例子

ProxyPass/http://oldip:80/ 
ProxyPassReverse/http://oldip:80/ 

交换机的DNS在新的服务器指向。

等待24-48小时,确保所有流量正在通过新服务器路由到旧服务器。

删除代理设置。 stop apache 做数据库备份 发送给新服务器 恢复数据库备份 启动apache。

你可以编写一个脚本来做到这一点。

要加快数据库备份,你可以使用二进制日志,所以你只需要传输更近的一个

当你的快乐新的服务器工作正常。停止运行旧服务器。

应该适用于少量的停机时间。

或者,减少对DNS的TTL(注:并非所有的DNS缓存方面,这如果小),等待改变 切换到新的服务器,具有较高的TTL,由于处理旧的TTL为真小,大多数人不会受到影响。

或者,使当前站点只读直到发生切换。