oracle grant 是如何运作的?

How does oracle grant works?

据我所知,在 Oracle 中,一个模式仅供一个用户使用,如果您(授予者)将访问该模式的权限授予另一个用户(被授予者),则该模式将被复制到被授予者的模式中,而 MySQL 只是提供访问数据库的权限,无需复制。

例如如果 user1 是 schema1,并且您授予 user2 访问 schema1 的权限。将 schema1 中的那些表复制到 user2 的模式(可能是 schema2)中。这在幕后是如何运作的?

并且,

如果我只给user2授予select访问user1.table1的权限,table1会被复制到user2的schema中吗?还是 user2 只能访问 table1 而 table1 仍然在 schema1 中?

GRANT SELECT ON user1.table1 TO user2;

请帮助我了解 oracle 授予权限的工作原理。谢谢。

that schema is copied to the grantee's schema

这是完全错误的。

被授予者仅获得访问其他架构中的 table 的权限。要访问 table,被授予者需要在 table 引用前加上授予者的架构:

例如user2 需要 运行:

select *
from user1.table1;

未复制任何内容,查询直接访问其他架构中的 table。