Oracle 11gR2(x86 Windows):如何最好地重新创建Oracle数据库?
我有一个带有索引和约束条件的250个表。我需要在新的数据库中重新创建这些表,索引和约束并加载数据。我需要知道如何在SQL Plus和/或SQL Developer中执行以下操作,除非有一个可以自动执行所有操作的神奇工具。提前致谢!
卸载(导出)250个表中的所有数据。
为250个表创建一个包含
CREATE TABLE
语句的sql脚本文件。创建一个包含250个表的
CREATE INDEX
语句的sql脚本文件。创建一个包含250个表的
ALTER TABLE ADD CONSTRAINT
语句的sql脚本文件。运行脚本以在新数据库中创建表。
将导出的数据加载到新数据库的表中。
运行该脚本以创建所有索引。
运行该脚本以添加所有约束。
编辑:我连接到其链接到源dB的Windows Server 2008的远程只安装了一个Oracle客户端上的远程桌面。出于安全原因,我不允许直接从本地计算机链接到Win Server,那么我可以将整个源数据库转储到远程,然后将其压缩到本地目标计算机上?我试图复制我的电脑上的整个数据库。
还有一个因素:源数据库在远程系统上,我需要在本地机器上重新创建该数据库。我可以将整个\ oradata文件夹保存在收存箱中,并将其替换为我的\ oradata吗? – 2014-10-10 15:53:06
@Frank只需移动'/ oradata'文件夹?我不能说,我从来没有这样做过。但是,如果您有权访问该文件夹,则仍然可以使用'expdb'将数据库转储到那里,然后仅将转储文件复制到系统中,以便使用'impdb'重新导入。 _感觉对我比较安全。 – 2014-10-10 16:09:04
我刚刚使用Oracle Data Modeler的“生成DDL”选项来创建单独的SQL脚本文件,以创建表,索引和PK/FK约束。唯一的问题是它为每个表创建单独的脚本文件,而不是所有创建表的一个脚本文件,创建所有索引的一个脚本文件,以及所有约束条件的一个scipt文件:(我正在使用Winx64,所以假设我可以连接文件到一个 – 2014-10-10 18:07:00