我在共享服务器上安装了MySQL,并且可以通过phpMyAdmin访问。我想将该数据库连续,实时地克隆到云mySQL数据库(我们专门为这个数据库创建了一个支持Nginx的MySQL服务器)我想创建一个旧的实时克隆,然后更新代码到指向新数据库...
答案 0 :(得分:1)
您正在寻找的是复制。它可以在一个帖子中涵盖很多选项。
http://dev.mysql.com/doc/refman/5.5/en/replication.html
如果您要通过互联网进行复制,则需要保护它。您的主机可能允许虚拟局域网这样就不会耗尽您的带宽资源。
你应该看一下来自percona的一套很棒的工具是maatkit
https://launchpad.net/percona-toolkit
文档和用法示例 http://www.maatkit.org/doc/
这对其他任务有好处,但它也允许您快速复制实时数据库。
使用实时数据库时,请确保备份是最新的。
答案 1 :(得分:1)
我认为在共享服务器环境中进行MySQL的实时复制会很困难。由于您似乎正在移动数据库服务器,因此我倾向于对数据进行热拷贝,并将其安装在新的数据库服务器上。在获取该副本的同时,您应该打开应用程序的查询日志记录。
然后,您的切换将包括针对新数据库运行已记录的查询(比记录的更快!),最后,在已运行所有已记录查询的位置,切换应用程序的配置以便新数据库使用。
编辑:热拷贝的问题是数据在被复制的同时被写入数据库。这意味着每个表的“上次更新”时间会有所不同。在此基础上,您的应用程序是否可以为每一行设置“last_updated”列?如果是这样,您将能够告诉每个表仍然需要复制哪些记录的查询。