如何为 Oracle 中的所有用户和权限生成 DDL

How to generate DDL for all Users and privileges in Oracle

我正在尝试将数据库实例从 RDS Oracle 迁移到本地 Oracle。我对数据库脚本还是很陌生。我发现这个脚本可以为我通过 SQLDeveloper 传递的单个用户完成工作。但是,我的 RDS Oracle 实例上有 200 多个用户。

https://oracle-base.com/dba/script?category=script_creation&file=user_ddl.sql

我已尝试在此处删除用户名和行号的变量,但这会生成大量重复条目。有人可以指导我为所有用户实现上述脚本结果集的最佳方法是什么。

非常感谢!

我建议另一种方法(如果可以的话):数据泵。

您将执行导出

  • 使用用户SYSTEMSYS,因为他们拥有数据库并且可以导出...
  • ...FULL 数据库
  • 内容将是 METADATA_ONLY(这样您就可以跳过 数据;我知道您不需要那个)

那会是这样的

expdp system/pwd file=your_db.dmp full=y content=metadata_only

在目标数据库中以相同的方式导入。