【问题标题】:Share mysql database共享mysql数据库
【发布时间】:2014-10-17 16:31:55
【问题描述】:

我正在寻找从两台服务器到一台服务器的共享数据库,例如,有一个 mysql 数据库服务器与来自 hostgator.com 的购物数据库相关,并且有两个来自其他托管公司而不是来自 hostgator 公司的购物网站服务器,我的问题是这是否可以登录到其他公司服务器使用其他两个公司的购物网站服务器的数据库!

如果可能的话,我们可以使用它吗?我们叫什么!有什么网站可以让我了解更多!

非常感谢。

【问题讨论】:

  • 是的。使用您的辅助服务器的主机创建一个用户并允许在 my.cnf 中进行远程访问

标签: mysql database sharing


【解决方案1】:

用途:

$con = new mysqli ("SERVER_IP","db_user","db_pass","db");

代替

$con = new mysqli ("localhost",...);

您需要为数据库创建一个具有主机% 权限的用户,并且您需要允许远程访问该数据库,请参见此处:

enable remote access

希望这就是你要找的东西

【讨论】:

    【解决方案2】:

    如果应用程序可以“看到”该数据库,则任何应用程序都可以直接使用任何数据库。这意味着包括但不限于:

    • 应用程序和数据库都在运行
    • 运行应用程序和数据库的主机可以通过网络相互访问
    • 应用程序可以通过网络访问数据库服务
    • 必要的端口没有被阻塞
    • 已启用必要的权限

    只要不存在一个实例无法“看到”另一个实例的条件(例如防火墙阻止主机和/或端口访问),那么应用程序和数据库的主机是什么都没有区别在。只是改变了连接字符串而已。

    然而,如果确实存在这样的情况(例如端口被阻塞,这在这种情况下很常见)并且数据库不存在t 对应用程序“可见”,那么您有两个选择:

    1. 更正条件(例如,打开端口)
    2. 创建中间 API

    在许多情况下,尤其是在您不拥有所使用的网络基础设施的情况下,第一个选项可能是不可能的。 (即使您确实拥有网络基础设施,出于安全原因,它也可能不可取。除非您真正了解该数据库的安全性,否则可通过 Internet 访问的数据库通常不受欢迎。)

    因此,如果您需要创建 API,这只是一个附加应用程序,可以查看数据库(可能在同一主机上或同一防火墙内运行)并且公开可见的功能(例如 Web 服务而不是直接数据库访问)。它可以非常简单,只向数据库公开获取/保存 (CRUD) 功能。或者它可以更智能,将业务运营暴露在外部客户可以使用的数据上。这取决于你。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-15
      • 2023-01-23
      • 1970-01-01
      相关资源
      最近更新 更多