如何在本地计算机上复制Oracle 11g数据库(数据+结构)以进行开发?

时间:2010-03-24 09:59:36

标签: oracle database oracle11g

我正在安装一个安装了Oracle 11g的测试服务器。我想知道无论如何我都可以在我的本地Linux机器上复制数据库(环境+数据)。我在Windows XP上使用带有SUN Virtual Box的CentOS 5.3。在Windows上我使用sqldeveloper客户端连接到11g数据库。


3 个答案:

答案 0 :(得分:2)

有多种方法可以移动数据:

  • 还原测试服务器上的RMAN备份
  • 使用exp / expdp / imp / impdp
  • 导出和导入数据
  • 使用可传输的表空间(Further Info
  • 导出和导入
  • 使用数据库链接使用SQL
  • 复制数据

答案 1 :(得分:0)

您可以使用the Database Configuration Assistant从生产数据库生成模板。这将为您提供所有参数和表空间等。您需要稍微调整一下配置;例如,文件路径可能是错误的,并且一些参数可能需要缩小尺寸。然后,您可以将该模板提供给DBCA以克隆Linux机器上的数据库。

要获取模式和数据,您应该使用Data Pump(而不是较旧的导入/导出功能)。这可以通过命令行或PL/SQL运行。

请记住,在开发或测试环境中使用生产数据可能会导致您违反数据保护法律和其他合规性问题。这取决于您的应用程序的功能以及您运营的管辖权。但如果您的生产系统包含公民的个人数据,您需要非常小心。有些产品会将屏蔽作为数据导入过程的一部分(Oracle销售一个),但它们往往很昂贵。滚动你自己的掩蔽产品可能很棘手:如果这适用于你的情况,一定要尽早让你的合规工作人员(法律团队)参与进来。

答案 2 :(得分:0)

如果您的开发不是与核心数据库功能相关的话,我建议您安装可在本地免费使用的Oracle XE。然后,您可以使用上面给出的方法将数据泵入Oracle XE并在其上编译代码,但是对于开发,我认为您不需要像生产中那样需要数据。