【问题标题】:How to Connect two databases on two different servers using php如何使用php连接两个不同服务器上的两个数据库
【发布时间】:2012-04-21 07:19:48
【问题描述】:

在 MySQL 中,我有两个不同的数据库——我们称它们为 A 和 B。

数据库 A 驻留在服务器 server1 上,而数据库 B 驻留在服务器 server2 上。

两台服务器 {A, B} 在物理上彼此靠近,但位于不同的机器上并且具有不同的连接参数(不同的用户名、不同的密码等)。

在这种情况下,是否可以在数据库 A 中的表与不同服务器的数据库 B 中的表之间执行连接?

如果是这样,我该如何以编程方式在 php 中进行处理? (我是用php,MySQLDB分别和每一个数据库交互)。

【问题讨论】:

  • 要么阅读手册页,要么阅读本页右侧链接的 100500 个类似问题之一。
  • 我希望有一个密切的原因“毫无意义、懒惰和偷偷摸摸的问题”
  • 有些人只能通过提出特定于他们希望如何提出/回答问题的问题来学习。诚然,他们可以从另一个问题中得到相同的解决方案,但它不会点击他们,因为它不是 100% 与他们的特定解决方案有关。
  • @YourCommonSense wat's the question you have....我在这里问这个问题之前阅读了所有这些......我没有找到我正在寻找的答案......

标签: php mysql


【解决方案1】:

我能想到的唯一方法是使用所有不同的参数打开 2 个单独的连接(即实例化 2 个 PDO 对象),使用 2 个查询将您需要的所有数据查询到 PHP 中,然后在 PHP 上使用它.

【讨论】:

  • 我试图通过在 php 中创建两个 PDO 对象来连接,但我收到一条错误消息“用户'数据库名称'@'IP 地址'的访问被拒绝(使用密码:'yes')”
  • @user1334095 如果您在连接到某个数据库时遇到某些问题,您到底为什么要问另一个问题?您为什么不问一个关于这个非常特殊的问题有问题吗?
  • @user1334095:这意味着您输入的用户名或密码错误,或者您尝试访问的用户没有足够的权限。但这并不意味着如果你做得对,它就不会起作用。
【解决方案2】:

您可以在 PHP 中创建两个单独的MySQL connections,对这两个表执行两次查询,然后在 PHP 中处理结果。

另一种选择是,由于服务器在物理上很接近,因此设置一个或两个服务器以将所需的数据库/表相互复制。您可以在此处查看有关 MySQL 复制的更多信息: http://dev.mysql.com/doc/refman/5.6/en/replication.html

【讨论】:

    猜你喜欢
    • 2012-10-23
    • 1970-01-01
    • 2011-07-05
    • 2017-05-16
    • 1970-01-01
    • 2019-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多