如何使用生产数据设置数据库测试和开发环境

how to set up a databse test and development environment with data from production

我需要帮助为我的客户设置测试、开发和测试 Oracle 数据库环境吗? 目前他们只有一个生产数据库和 PL/SQL 代码。 我想创建单独的 test/dev/pre-prod 环境。我需要帮助来设置这些环境。发布管理使用的环境设置策略是什么? 我想将生产环境中的代码和数据自动同步到这些新环境中。我可以使用任何自动化工具来简化此过程吗? 注意-客户端目前没有任何SVN系统。

这里有很多选项。但在进入他们的背景之前,将生产数据放入测试或开发环境是不好的。通常根据测试和开发环境的性质,对谁可以访问它们有更宽松的限制。因此,当您在没有相同安全级别的开发/测试环境中拥有相同的数据时,您的生产环境的安全性就变得毫无意义。

  1. 复制结构而不是数据

为了最好地实现这一点,您可以遵循在生产系统上执行的相同设置/迁移步骤。从本质上讲,这将为您提供一个与生产数据库具有相同模式的系统。您可以从那里添加自己的测试数据。

  1. 使用数据屏蔽复制您的生产数据库

一些公司,例如Oracle 提供 Data Masking 技术。这允许您复制生产系统,同时屏蔽生产数据库中的真实值。最好的数据屏蔽解决方案将保持数据的完整性,例如 phone 数字仍然看起来像 phone 数字。

  1. 恢复生产数据库的备份

根据我之前概述的安全问题,这是我列表中的最后一个。但这实质上是按照您的灾难恢复计划将数据库的最新副本(包括数据)恢复到开发/测试环境中。