Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.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
具有2个不同用户的2个数据库之间的MySQL交叉引用_Mysql_Sql_Database_Cross Reference_Privilege - Fatal编程技术网

具有2个不同用户的2个数据库之间的MySQL交叉引用

具有2个不同用户的2个数据库之间的MySQL交叉引用,mysql,sql,database,cross-reference,privilege,Mysql,Sql,Database,Cross Reference,Privilege,假设我有两个数据库,分别名为db1和db2。出于某些原因,我们的托管服务只允许每个数据库有一个用户。我有user1是db1的管理员,而user2是db2的管理员。以下是一个查询示例: SELECT * FROM db1.table1, db2.table2 WHERE db1.table1.column1 = db2.table2.column2; 如果user1(或user2)同时是db1和db2的管理员,则上述SQL可以工作。但就我而言,情况并非如此。这就是SQL不能工作的原因,因为use

假设我有两个数据库,分别名为
db1
db2
。出于某些原因,我们的托管服务只允许每个数据库有一个用户。我有
user1
db1
的管理员,而
user2
db2
的管理员。以下是一个查询示例:

SELECT *
FROM db1.table1, db2.table2
WHERE db1.table1.column1 = db2.table2.column2;
如果
user1
(或
user2
)同时是
db1
db2
的管理员,则上述SQL可以工作。但就我而言,情况并非如此。这就是SQL不能工作的原因,因为
user1
db2
上没有特权,反之亦然

如何在这两个数据库之间进行交叉引用


谢谢。

如果我理解正确,您想在两个不同数据库上的两个表之间建立联接吗?如果是这种情况,您使用的登录名必须在两个数据库上都具有select权限。你无法避免。它不需要是管理员。如果您只能创建每个数据库的一个用户,则应该考虑更改提供程序。这是一个非常奇怪的限制,在任何非常复杂的系统中,如果您想要为不同的用户/应用程序创建特定的访问控制,这是一种常见的做法,那么它完全没有用。