Php 使用不同的用户和密码连接多个数据库mysqli

Php 使用不同的用户和密码连接多个数据库mysqli,php,mysql,database,mysqli,Php,Mysql,Database,Mysqli,我在mysqli中有两个数据库(db1、db2),它们具有不同的用户和密码, 我尝试连接,但失败了 $this->db = mysqli_connect(self::DB_SERVER, self::DB_USER, self::DB_PASSWORD,self::DB); 我在查询中做了如下操作: select*from db2.table 但是给了一个错误, 上面的示例在没有数据库的用户和密码时在本地成功。请帮助如果您在数据库中有不同的用户名和密码,我认为一个连接无法跨越这一点。因

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

$this->db = mysqli_connect(self::DB_SERVER, self::DB_USER, self::DB_PASSWORD,self::DB);
我在查询中做了如下操作:

select*from db2.table
但是给了一个错误,
上面的示例在没有数据库的用户和密码时在本地成功。请帮助

如果您在数据库中有不同的用户名和密码,我认为一个连接无法跨越这一点。因此,您至少需要将它们更改为使用相同的mysql用户

或者,如果您不需要从单个连接进行访问,请使用以下方式:


如果数据库中有不同的用户名和密码,我不认为一个连接就可以通过它。因此,您至少需要将它们更改为使用相同的mysql用户

或者,如果您不需要从单个连接进行访问,请使用以下方式:


数据库和非表上的不同用户名和密码我想说的是数据库,而不是表(它已被编辑)。重申一下,如果不同的用户没有访问权限,您无法跨数据库查询。即,如果user1可以访问db1,但不能访问db2,那么user1就不能从与db1的连接中查询并选择db2上的数据。所以,如果你想访问它,你需要打开两个独立的连接。因此,我的答案仍然成立。数据库上的用户名和密码不同,而不是表。我的意思是说数据库,而不是表(它已被编辑)。重申一下,如果不同的用户没有访问权限,您无法跨数据库查询。即,如果user1可以访问db1,但不能访问db2,那么user1就不能从与db1的连接中查询并选择db2上的数据。所以,如果你想访问它,你需要打开两个独立的连接。因此,我的答案仍然成立。连接失败还是查询失败?如果连接失败,可能是服务器配置有限制。不清楚您在问什么连接或查询失败?如果连接失败,可能服务器配置有限制。不清楚您的要求
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");