Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在两个共享主机帐户上的数据库之间移动数据_Php_Mysql_Hosting - Fatal编程技术网

Php 在两个共享主机帐户上的数据库之间移动数据

Php 在两个共享主机帐户上的数据库之间移动数据,php,mysql,hosting,Php,Mysql,Hosting,我有两个共享的托管帐户,每个帐户都有一个自己的cPanel登录数据库。假设这两个数据库具有相同的结构,我需要做什么来同步它们 同步脚本将位于与其中一个托管帐户连接的域上。我知道用于同步同一帐户上的数据库的MySQL/PHP相当简单,但让我困惑的是如何访问位于不同主机上的数据库 这不是一次性的事情,我需要能够通过单击按钮/链接来做到这一点 唯一想到的是让远程数据库定期将所有内容导出到.csv文件,并让域上的脚本连接到第一个数据库导入所有内容,但一定有更好的方法吗 如果整个问题令人困惑,那么问题的要

我有两个共享的托管帐户,每个帐户都有一个自己的cPanel登录数据库。假设这两个数据库具有相同的结构,我需要做什么来同步它们

同步脚本将位于与其中一个托管帐户连接的域上。我知道用于同步同一帐户上的数据库的MySQL/PHP相当简单,但让我困惑的是如何访问位于不同主机上的数据库

这不是一次性的事情,我需要能够通过单击按钮/链接来做到这一点

唯一想到的是让远程数据库定期将所有内容导出到.csv文件,并让域上的脚本连接到第一个数据库导入所有内容,但一定有更好的方法吗

如果整个问题令人困惑,那么问题的要点是——有没有办法让域上的脚本访问完全不同的共享主机帐户上的数据库?

简言之,没有,没有办法

通常,托管提供程序只允许本地主机用户访问数据库。这意味着来自另一台机器的脚本无法访问它

还有,它是什么样的同步?单程还是双向?但是,我想,这超出了范围

想到的唯一可行的解决方案是某种转储/恢复过程

例如:

webserver数据源定义了一个URL,通过请求可以获取数据库的转储内容

数据的Web服务器B目标定义了带有“同步”按钮的页面

单击“同步”按钮后,服务器B将从服务器A获取该URL,接收A的数据并将其与自己的数据合并


确保数据导出URL的安全非常重要。在该脚本中,您可以检查,例如,传入请求的IP,或access_令牌的存在和正确性,或者您喜欢的任何东西。

您可以通过SSL/SSH或PHP隧道连接到数据库吗?如果是,请尝试中的数据比较工具


数据比较工具将允许您比较不同数据库之间的数据。您可以使用试用版对其进行测试。

为什么不在要传输的数据库中添加一个远程用户@,并在脚本中使用它来访问数据库中的数据?@EFT不是所有的主机都放弃数据库服务器的主机名。@SergeiTulentsev您是对的。我在想我的主人这应该是双向的,但我愿意选择单程。如果我把它们移到同一个主机提供商那里呢?那会有什么问题吗?那么,你觉得我的解决方案怎么样?这个url会在哪里?假设域是domain1.com和domain2.com,同步按钮应该在domain2上。无论您喜欢什么,您都必须在domain1上编写一个脚本来处理此URL并将Db转储到响应中