如何使用 ora2pg 提取 public DBlink

How to extract public DBlink with ora2pg

我的理解是 ora2pg 能够在模式中提取私有 Oracle DBLink。 public DBlinks 怎么样(在 DBeaver 中,我在 Global metadata/Public Database Links 下看到它们)?

如果我在配置文件和 运行 这个命令中指定了一个模式,则没有找到 DBLink(如预期的那样,因为在这个模式中没有设置私有 DBLink):

ora2pg -t DBLINK -o dblink.sql -b ./schema/dblinks/ -c ./config/ora2pg.conf

如果我在配置文件中注释模式(针对所有模式)和运行相同的命令,我得到这个错误:

FATAL: ORA-20000:
ORA-06512: at "SYS.DBMS_UTILITY", line 347
ORA-24237: object id argument passed to DBMS_UTILITY.INVALIDATE is not legal
ORA-06512: at line 2 (DBD ERROR: OCIStmtExecute)

有没有办法提取 public DBLink?

/config/ora2pg.conf 中,您只需将 PUBLIC 作为架构名称:

# Oracle schema/user to use
SCHEMA PUBLIC