A上面用户user_a有访问B的DBLINK,B_dblink,在A库的用户user_a上执行如下授权,授权dblink的table1给A库的user_b
grant select on table1@B_dblink to user_b;
报错ORA-02021: 不允许对远程数据库进行 DDL 操作
A通过dblink访问B,权限管控不在A上,而在B上,A使用B的哪个用户建立dblink,权限全在B的这个用户下。
MES服务器上SR用户通过DBLINK访问ERP,在ERP中的用户是erpsr,实际数据存在ERP中的erpmes用户
1、在ERP中建立erpsr用户
2、在ERP中的erpmes用户下授权erpsr可以select erpmes下的表,只授权select
3、在ERP的erpsr用户下建立erpmes下表的同义词
4、在MES库中的SR用户下建立dblink,dblink的connect to使用erpsr
--控制权限再MES服务器上控制,不是在ERP服务器上控制,如下第4步建立dblink使用erpsr用户,不能使用erpmes用户,一旦使用erpmes用户,那么MES库上的SR用户实际是使用erpmes用户的权限
先在ERP中做如下
1.system用户执行如下
create user erpsr identified by 123456;
grant connect to erpsr;
2.system用户执行如下
grant select on erpmes.table_name to erpsr
3.erpsr用户执行如下
create synonym table_name for erpmes.table_name
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30126024/viewspace-2168508/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30126024/viewspace-2168508/