我有两个共享主机帐户,每个帐户都有自己的数据库(自己的cPanel登录)。假设这两个数据库具有相同的结构,我需要做什么才能同步它们?
同步脚本将位于与其中一个主机帐户关联的域中。我知道用于同步同一个帐户的数据库的MySQL / PHP相当简单,但是我在这里混淆了如何访问不同主机上的数据库?
这不是一次性的事情,我需要通过点击按钮/链接来实现这一点。
唯一想到的是让远程数据库定期将所有内容导出到.csv文件,并让连接到第一个数据库的域上的脚本导入所有内容,但是必须要做得更好方式是什么?
如果整个问题令人困惑,问题的要点是 - 有没有办法让域上的脚本访问完全不同的共享主机帐户上的数据库?
答案 0 :(得分:0)
简而言之,没有,没有办法。
通常,托管服务提供商只允许localhost
用户访问数据库。这意味着来自另一台机器的脚本无法访问它。
另外,它是什么样的同步?单向还是双向? (但是,我想,这超出了范围)
唯一可行的解决方案是某种转储/恢复过程。
示例:
网络服务器A
(数据来源)通过请求您可以获取数据库的转储内容来定义URL
网络服务器B
(数据目的地)定义了一个带有“同步”按钮的页面。
点击“同步”按钮后,服务器B
将从服务器A
获取该网址,接收A的数据并将其与自己的数据合并。
注意强>
保护数据导出URL非常重要。在该脚本中,您可以检查传入请求的IP,“access_token”的存在和正确性或您喜欢的任何内容。
答案 1 :(得分:0)
您可以通过SSL / SSH或PHP隧道连接到数据库吗?如果是,请尝试dbForge Studio MySQL中的数据比较工具。
数据比较工具将允许您比较不同数据库之间的数据。您可以使用试用版进行测试。