如何使用TOAD导出模式及其数据

时间:2019-02-03 12:05:24

标签: oracle toad

在TOAD上,有许多导出数据的选项。 enter image description here 我想做的是导出模式/用户及其相关对象(表空间,序列等),以便将其导入另一台计算机上的另一台oracle安装中。

是否有适合我目标的特定选项?

谢谢

1 个答案:

答案 0 :(得分:2)

我不会使用TOAD来执行此操作,而是从命令提示符处,在命令提示符处使用“数据泵导出和导入”。这是一个例子。

首先,作为SYS创建一个目录(Oracle对象),该目录指向我的硬盘驱动器上的目录(文件夹)。将所需的特权授予将使用它的用户。

fetch

作为MDP(是我在回答您的另一个问题时在这里创建的用户,这里:What are roles and privileges to give a user in order to perform CRUD(on Oracle 12)),请创建一些对象:

SQL> show user
USER is "SYS"
SQL> create directory my_dir as 'c:\temp';

Directory created.

SQL> grant read, write on directory my_dir to mdp;

Grant succeeded.

确定,操作系统级别,命令提示符:导出用户:

SQL> connect mdp/pdm@xe
Connected.
SQL> create table test (id number);

Table created.

SQL> create view v_test as select * From test;

View created.

SQL> insert into test
  2    select level from dual
  3    connect by level <= 5;

5 rows created.

SQL> commit;

Commit complete.

好;已成功导出。

现在,使用SYS Oracle用户,我将删除MDP用户。之所以使用CASCADE,是因为用户也必须删除一些对象。我为什么要放弃它?为了模拟您的情况,即将DMP文件移到不包含该用户的另一台计算机/数据库中。

C:\>expdp mdp/pdm@xe directory=my_dir file=mdp.dmp log=mdp_exp.log

Export: Release 11.2.0.2.0 - Production on Ned Vel 3 18:00:54 2019

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
Legacy Mode Active due to the following parameters:
Legacy Mode Parameter: "file=mdp.dmp" Location: Command Line, Replaced with: "dumpfile=mdp.dmp"
Legacy Mode Parameter: "log=mdp_exp.log" Location: Command Line, Replaced with: "logfile=mdp_exp.log"
Legacy Mode has set reuse_dumpfiles=true parameter.
Starting "MDP"."SYS_EXPORT_SCHEMA_01":  mdp/********@xe directory=my_dir dumpfile=mdp.dmp logfile=mdp_exp.log reuse_dumpfiles=true
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 64 KB
Processing object type SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processing object type SCHEMA_EXPORT/TABLE/TABLE
Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Processing object type SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type SCHEMA_EXPORT/TABLE/COMMENT
Processing object type SCHEMA_EXPORT/VIEW/VIEW
. . exported "MDP"."TEST"                                5.031 KB       5 rows
Master table "MDP"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded
******************************************************************************
Dump file set for MDP.SYS_EXPORT_SCHEMA_01 is:
  C:\TEMP\MDP.DMP
Job "MDP"."SYS_EXPORT_SCHEMA_01" successfully completed at 18:01:24


C:\>

假设我们现在在另一台计算机上;首先,我将创建MDP用户:

C:\>sqlplus sys@xe as sysdba

SQL*Plus: Release 11.2.0.2.0 Production on Ned Vel 3 18:02:32 2019

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Enter password:

Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

SQL> drop user mdp cascade;

User dropped.

SQL>

回到操作系统命令提示符,因为我现在要导入DMP文件的内容。

SQL> show user
USER is "SYS"
SQL> create user mdp identified by test
  2  default tablespace users
  3  temporary tablespace temp
  4  quota unlimited on users;

User created.

SQL> grant create session to mdp;

Grant succeeded.

SQL>

导入成功完成。现在,我可以将MDP用户及其所有对象一起使用,例如

C:\>impdp system@xe directory=my_dir dumpfile=mdp.dmp logfile=mdp_imp.log

Import: Release 11.2.0.2.0 - Production on Ned Vel 3 18:09:47 2019

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
Password:

Connected to: Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
Master table "SYSTEM"."SYS_IMPORT_FULL_01" successfully loaded/unloaded
Starting "SYSTEM"."SYS_IMPORT_FULL_01":  system/********@xe directory=my_dir dumpfile=mdp.dmp logfile=mdp_imp.log
Processing object type SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processing object type SCHEMA_EXPORT/TABLE/TABLE
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
. . imported "MDP"."TEST"                                5.031 KB       5 rows
Processing object type SCHEMA_EXPORT/VIEW/VIEW
Job "SYSTEM"."SYS_IMPORT_FULL_01" successfully completed at 18:09:51


C:\>

别忘了我在另一个主题中所说的:只授予MPD所需的特权。当前,它只能创建会话并使用现有对象,而不能创建任何东西。

事情就是这样,或多或少。不要过分依赖GUI(您知道这是怎么回事; 靠GUI生活的人,靠着GUI死了),单击此处,然后单击 ,希望会发生一些好事。很可能不会。不过,一旦您知道自己在做什么,GUI确实是一个很大的帮助。