grant报错ORA-02021: 不允许对远程数据库进行 DDL 操作

Posted 雅冰石

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了grant报错ORA-02021: 不允许对远程数据库进行 DDL 操作相关的知识,希望对你有一定的参考价值。

一 问题描述

执行如下grant授权sql

grant select,delete,update,insert on sgpm.e_prc_rela to C_CONS;

时报错:grant报错ORA-02021: 不允许对远程数据库进行 DDL 操作

可是我这里看起来没有指定DBLINK呀

二 排查思路

检查下该对象类型

select owner,object_name,object_type from dba_objects where object_name='C_CONS' AND OWNER='SGPM';

发现该对象是个同义词SYNONYM。

查看该同义词定义,发现用到了DBLINK:

SELECT DBMS_METADATA.GET_DDL('SYNONYM','C_CONS','SGPM') from dual;

CREATE OR REPLACE SYNONYM "SGPM"."C_CONS" FOR "SGPM"."C_CONS"@"test""

所以没法对远程数据库进行DDL操作。

以上是关于grant报错ORA-02021: 不允许对远程数据库进行 DDL 操作的主要内容,如果未能解决你的问题,请参考以下文章

Linux学习-MySQL8.0报错

Linux学习-MySQL8.0报错

mariadb配置允许远程访问方式

linux为啥不允许远程连接mysql

怎么解决mysql不允许远程连接的错误

解决mysql8报错:ERROR 1410 (42000): You are not allowed to create a user with GRANT