【问题标题】:Connect multiple database mysqli with different users and passwords [closed]使用不同的用户和密码连接多个数据库 mysqli [关闭]
【发布时间】:2016-02-04 23:15:42
【问题描述】:

我在 mysqli 中有 2 个数据库 (db1,db2),具有不同的用户和密码, 我尝试连接,但失败了,

$this->db = mysqli_connect(self::DB_SERVER, self::DB_USER, self::DB_PASSWORD,self::DB);

我在查询中做了:

select*from db2.table

但是报错了, 当没有数据库的用户和密码时,上面的示例在本地成功。请帮忙

【问题讨论】:

  • 连接失败还是查询失败?如果连接失败,可能是服务器配置有限制。
  • 不清楚你在问什么

标签: php mysql database mysqli


【解决方案1】:

如果您在数据库上使用不同的用户名和密码,我认为单个连接无法跨越。因此,您至少必须将它们更改为使用相同的 mysql 用户。

或者,如果您不需要从单个连接访问,请使用以下内容:

https://github.com/thephpeffect/ConnectionManager

db("default", new mysqli(self::DB_SERVER, self::DB_USER1, self::DB_PASSWORD1,self::DB1));
db("db2", new mysqli(self::DB_SERVER, self::DB_USER2, self::DB_PASSWORD2,self::DB2));

$result = db("db2")->query("select*from db2.table");

【讨论】:

  • 不同的用户名和密码在数据库而不是表上
  • 我弗洛伊德滑倒了,我的意思是说数据库,而不是表(它已被编辑) 重申一下,如果他们没有访问权限,您不能跨具有不同用户的数据库进行查询。 IE。如果 user1 可以访问 db1 但不能访问 db2,则 user1 无法从与 db1 的连接中查询并选择 db2 上的数据。因此,如果您希望能够访问它,则需要打开两个单独的连接。因此我的答案仍然成立。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-08
  • 2014-03-06
  • 1970-01-01
  • 1970-01-01
  • 2021-10-10
  • 2018-12-05
相关资源
最近更新 更多