嗨,我有一个小问题。我需要一些关于如何解决这个问题的建议。
我有数据库A,B,C,D。 D在所有环境(DEV,UAT,PROD)中访问A,B,C中的数据。
每当数据库A,B,C从PROD刷新时,从DEV / UAT中的各个数据库到D的所有授权都将丢失,我需要在这些环境中再次运行所有授权。
是否有一种方法可供我使用,以便此问题不会在未来重复出现。
答案 0 :(得分:1)
遵循解决问题的建议:
如果您使用的是expdp / impdp,请确保您没有在expdp / impdp命令中提及“exclude = grant”。默认情况下,如果您未在命令中将其排除,则会导出/导入对象上的授权。
如果您正在使用链接服务器并使用drop和create(即CTAS)创建刷新的对象,请使用insert into table(字段列表)从remote_table @ link_server_name中选择field_list来填充数据。这样你就不会失去对桌子的许可。请注意,如果可行,则需要截断目标表或插入增量行。
如果您有在生产中使用它们的许可,可以使用oracle数据保护,流和黄金门等行业标准工具来使用其他同步过程。